MySQL en C, MySQL en C++ ou encore PostGreSQL... ou bien SQL Server

Signaler
Messages postés
4
Date d'inscription
mercredi 16 novembre 2005
Statut
Membre
Dernière intervention
1 juin 2006
-
Messages postés
4
Date d'inscription
mercredi 16 novembre 2005
Statut
Membre
Dernière intervention
1 juin 2006
-
Salut tout le monde

Ça doit faire un gros 5 mois que j'essaie d'utiliser MySQL en C ou en C++, mais en vain. (J'ai demandé de l'aide un peu partout, mais chaque fois je me mêle à un topic plus personne poste).

Je compile sous Windows XP avec Code::Blocks

En compilant ce code :

#include "util.h"
#include <mysql/include/my_global.h>
#include <mysql++/mysql++.h>

#include
#include

using namespace std;

int main()
{
    MYSQL mysql;

    mysql_init(&mysql);
    mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"testmysql");
    if (!mysql_real_connect(&mysql,"host","user","passwd","database",0,NULL,0))
    {
        fprintf(stderr, "Erreur MySQl: Error: %s\n",
              mysql_error(&mysql));
    }

    return 0;
}

J'obtiens une centaine d'erreur comme celle-là :

variable 'iob_' can't be auto-imported. Please read the ld's documentation about --enable-auto-import

Et là je me suis tapé toutes les chaînes de mails les plus ennuyantes écrites en Courier New en anglais et en espagnol, mais j'ai pas trouvé de solution miracle, toujours le même problème.

Avant d'obtenir cette erreur, j'obtenais celle-ci pour chaque fonction de MySQL :

undefined reference to 'mysql_init'
undefined reference to 'mysql_real_connect'
etc... etc...

Pour remédier à ce problème, j'ai ajouté au linker la librairie mysql_client, pour arriver aux trucs de 'iob_'.

Sous dev-Cpp, je ne réussis pas à franchir le problème des undefined reference, tout simplement. J'ai fouillé sur Google, pour trouver ce lien : http://dev.mysql.com/doc/refman/5.0/fr/link-errors.html mais je ne sais même pas ce qu'ils entendent par ligne de liaison.

Ensuite j'ai téléchargé Visual C++ Express, pour voir si y'aurait pas du changement, mêmes erreurs...

Finalement, me lassant de MySQL qui ne fonctionnaient pas, j'ai téléchargé SQL Server (version démo), pour finalement ne trouver aucun tutorial de son utilisation en C/C++.

Et pour finir il y a deux jours ce fut le tour de PostGreSQL, j'obtiens aussi pleins de undefined reference to... avec les 3 IDE.

Aujourd'hui, j'ai téléchargé la librairie MySQL++ et là j'obtiens pleins d'erreurs comme "undefined reference to `_imp___ZN7mysqlpp10ConnectionC1Eb'".

Voilà, j'espère avoir bien détaillé, si vous avez besoin de plus de précisions dites-le moi

Merci

5 réponses

Messages postés
233
Date d'inscription
jeudi 4 juillet 2002
Statut
Membre
Dernière intervention
5 juillet 2008

il y a pas mal d'exemple pour mysql sur le site.
http://www.cppfrance.com/recherche.aspx?r=Mysql&tr=source
Messages postés
4
Date d'inscription
mercredi 16 novembre 2005
Statut
Membre
Dernière intervention
1 juin 2006

J'en ai essayé un dernièrement, il venait avec un fichier projet pour Visual C++, ça avait l'air de marcher mais avec Code::Blocks, même problème.
Messages postés
233
Date d'inscription
jeudi 4 juillet 2002
Statut
Membre
Dernière intervention
5 juillet 2008

c quoi code::blocks ?
Messages postés
233
Date d'inscription
jeudi 4 juillet 2002
Statut
Membre
Dernière intervention
5 juillet 2008

ok je vois, un IDE. dans ce cas il doit te manquer des libs à inclure
Messages postés
4
Date d'inscription
mercredi 16 novembre 2005
Statut
Membre
Dernière intervention
1 juin 2006

Oui, ça je savais bien, maintenant, quelles sont ces librairies et comment les inclure ?