tutorials.de Buch-Aktion 05/2012
Seite 1 von 2 12 LetzteLetzte
Like Tree1Danke
ERLEDIGT
NEIN
ANTWORTEN
18
ZUGRIFFE
651
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Hallo,

    Ich bin nun in meinem Lehrbuch über C am Kapitel MySQL und C angekommen. Doch um die ersten Programm zu schreiben muss MySQL richtig installiert sein. Meiner Meinung nach habe ich das auch, doch irgendwie funtkioniert die ausführung trotzdem nicht. Ich benutze Code::Blocks, und bekomme immer folgende Fehler:

    Code :
    1
    2
    
    error: static declaration of 'rint' follows non-static declaration|
    ||=== Build finished: 1 errors, 0 warnings ===|

    Hier mein Programm:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    
    #include <stdio.h>
    #include <stdlib.h>
    #ifdef __WIN32__
      #include "my_global.h"
      #include "mysql.h"
    #else
      #include <mysql.h>
    #endif
     
    int main(void) {
      MYSQL *my;
      //Handle initialisieren
      my = mysql_init(NULL);
      if(my == NULL) {
        fprintf(stderr, "Initialisierung fehlgeschlagen!\n");
        return EXIT_FAILURE;
      }
     
      //Mit dem Server verbinden
      if( mysql_real_connect(
           my,      //Zeiger auf MYSQL-Handler
           NULL,    //Host-Name
           NULL,    //User-Name
           NULL,    //Passwort für user_name
           NULL,    //Name der Datenbank
           0,       //Port (default=0)
           NULL,    //Socket (defult=NULL)
           0        //Keine Flags
           ) == NULL) {
        fprintf(stderr, "Fehler mysql_real_connect(): %u (%s)\n", mysql_errno(my), mysql_error(my));
      } else
        printf("Erfolgreich mit dem MySQL-Server verbunden\n");
     
      //Hier befindet sich der Code für die Arbeit mit MySQL
     
      //Verbindung trennen
      mysql_close(my);
      return EXIT_SUCCESS;
    }

    Ich hoffe mir kann jemand helfen Schonmal danke im vorraus

    Gruß yax
     

  2. #2
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Ich habe meinen Code nocheinmal beendet, und jetzt bekomme ich eine andere Fehlermeldung:

    Code :
    1
    2
    3
    4
    5
    6
    7
    
    obj\Debug\mysql1.o||In function `main':|
    |12|undefined reference to `mysql_init@4'|
    |19|undefined reference to `mysql_real_connect@32'|
    |29|undefined reference to `mysql_error@4'|
    |29|undefined reference to `mysql_errno@4'|
    |36|undefined reference to `mysql_close@4'|
    ||=== Build finished: 5 errors, 0 warnings ===|

    und hier mein "neuer" Code:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    
    #include <stdio.h>
    #include <stdlib.h>
    #ifdef __WIN32__
      #include <windows.h>
    #endif
      #include <mysql.h>
     
     
    int main(void) {
      MYSQL *my;
      //Handle initialisieren
      my = mysql_init(NULL);
      if(my == NULL) {
        fprintf(stderr, "Initialisierung fehlgeschlagen!\n");
        return EXIT_FAILURE;
      }
     
      //Mit dem Server verbinden
      if( mysql_real_connect(
           my,      //Zeiger auf MYSQL-Handler
           NULL,    //Host-Name
           NULL,    //User-Name
           NULL,    //Passwort für user_name
           NULL,    //Name der Datenbank
           0,       //Port (default=0)
           NULL,    //Socket (defult=NULL)
           0        //Keine Flags
           ) == NULL) {
        fprintf(stderr, "Fehler mysql_real_connect(): %u (%s)\n", mysql_errno(my), mysql_error(my));
      } else
        printf("Erfolgreich mit dem MySQL-Server verbunden\n");
     
      //Hier befindet sich der Code für die Arbeit mit MySQL
     
      //Verbindung trennen
      mysql_close(my);
      return EXIT_SUCCESS;
    }
     

  3. #3
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.501
    Hi

    zum zweiten Beitrag: Linkerfehler.
    Liegt nicht am Code, sondern an den Projekteinstellungen / Kommandozeile.

    zum Ersten:
    Du musst für das Programm nicht unbedingt die DB MySQL installiert haben, sondern das Programm mit der MySQL-Lib kompilieren.
    Zum Ausprobieren wäre dann die DB sinnvoll.

    Gruß
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  4. #4
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Heißt das ich muss die libmysql.lib Datei einbinden?
     

  5. #5
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.501
    Genau. Je nach Compiler IDE ist das unterschiedlich, wie man es macht.
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  6. #6
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Okay, das habe ich jetzt gemacht, jedoch ohne Erfolg
     

  7. #7
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.501
    Welcher Compiler?
    Zitat Zitat von Signatur
    "Funktioniert nicht" ist zu ungenau!...Fehlermeldungen, Verhalten des Programms, ...?
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  8. #8
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Ich habe den gnu gcc compiler
     

  9. #9
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.501
    ...Und der Rest der Fragen?
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  10. #10
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Es kann sein das ich die Fragen jetzt falsch verstehe, aber die fehlermeldungen sind immer noch dasselbe und das Programm lässt sich nicht starten.
     

  11. #11
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.501
    Dann hast du nicht bzw. falsch gelinkt.
    Wo hast du die Lib-Datei denn eingetragen?
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  12. #12
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Also ich habe für das Programm ein neues Projekt gestartet. Dann habe ich unter Project->Build options...->Linker Settings->Add->... und dann habe ich mal alle Dateien aus dem Verzeichnis C:\Program Files\MySQL\MySQL Server 5.1\lib\opt die mit .lib enden hinzugefügt
     

  13. #13
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Hast du oder auch jemand anders () vielleicht eine Idee, woran es liegen könnte, dass ich das Programm nicht übersetzt bekomme?
     

  14. #14
    Avatar von sheel
    sheel sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    4.501
    Es bleibt dabei: Falsch eingebunden.
    Da ich Codeblocks aber bisher 0 Mal verwendet habe kann ich dir bei den IDE-Einstellungen auch nicht helfen.

    Hast du schon mal probiert über die Kommandozeile kompilieren und linken?

    PS: Nach guten 1.5 Stunden muss man auch noch nicht pushen anfangen.
     
    Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
    Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
    "Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?

  15. #15
    yax yax ist offline Mitglied Gold
    Registriert seit
    Jul 2010
    Beiträge
    175
    Okay, danke trotzdem
     

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 17.10.09, 09:50
  2. c++ Code::blocks Problem
    Von mentosfresser im Forum C/C++
    Antworten: 1
    Letzter Beitrag: 24.11.08, 17:50
  3. Code::Blocks Probleme mit Linker ?
    Von MettMax im Forum C/C++
    Antworten: 1
    Letzter Beitrag: 19.08.08, 21:59
  4. Code::Blocks und Qt?
    Von Theranium im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 05.06.08, 18:46
  5. Fehlermeldung Bei Code::blocks
    Von 20AMG08 im Forum C/C++
    Antworten: 9
    Letzter Beitrag: 19.02.08, 13:38