Forum Programmation.SQL Erreur lors de la compilation d'un programme SQL

Posté par  .
Étiquettes : aucune
0
6
déc.
2005
Bonjour à tous,

Voilà, un ami vient de formater son PC, et à installer Mandrake 10.2. On voudrai faire tourner un application type server SQL dessus. J'ai donc installé Mysql selon les indications indiqués ici (http://www.france-fps.com/article.php3?id_article=593). La database mysql est bien en place, et en local, j'y accède sans problème, à part à distance (bien que j'ai crée des profils qui devrait le permettre [j'en ai déjà crée sur d'autres machines).

Et il me semble que ce problème d'accès à distance est lié à celui que je rencontre lorsque je cherche à compiler l'application.

Voilà, ce que ça donne en cours de compilation:
gcc -pipe -o ../../login-server_sql login.o md5calc.o ../common/obj/core.o ../co
mmon/obj/socket.o ../common/obj/timer.o ../common/obj/db.o ../common/obj/plugins
.o ../common/obj/lock.o ../common/obj/malloc.o ../common/obj/showmsg.o ../common
/obj/utils.o ../common/obj/strlib.o ../common/obj/graph.o ../common/obj/grfio.o
../zlib/unz.o -ldl -L/usr/local/lib/mysql -lmysqlclient -lz
/usr/bin/ld: cannot find -lmysqlclient

Je pense qu'un composant Mysql n'est pas correctement installé ou manquante, mais je ne vois pas comment corriger le problème.

Merci d'avance pour toutes les propositions qui pourront être faite.

Chris
  • # Questions ?

    Posté par  . Évalué à 1.

    Salut Chris,


    "ldconfig -v | grep mysql" ca te donne bien que ta lib est installe ? libmysqlclient.so -> libmysqlclient.so.numero

    Si oui :
    Do you also have a libmysqlclient.so -> libmysqlclient.so.numero symlink in /usr/lib ? If not, make it.


    Bon courage et passe le bonjour a Delkar :P
    • [^] # Re: Questions ?

      Posté par  . Évalué à 1.

      Salut,

      Pour répondre à ta question, voici le résultat:
      ldconfig -v | grep mysql
      libmysqlclient_r.so.14 -> libmysqlclient_r.so.14.0.0
      libmysqlclient.so.14 -> libmysqlclient.so.14.0.0

      Par contre, je ne comprends pas à quoi correspond le symlink. Mais il y a bien des liens correspondant dans /usr/lib/ que voici:
      libmysqlclient.so
      libmysqlclient.so.14
      libmysqlclient_r.so
      libmysqlclient_r.so.14

      Je ne sais pas si ça te permettre de m'aider à faire avancer le chmilblique, mais merci de ton aide ^_^"

      Chris
    • [^] # Re: Questions ?

      Posté par  . Évalué à 1.

      Desole j ai pas trouve comment editer mon commentaire ^^'

      Apres plus de recherches, ca a vraiment l'air de venir du fait qu'il ne trouve pas ta library (library path ...).
      Les problemes comme le votre, resolus, que j'ai trouve sur le net ont l'air d'etre regle a ce niveau la, jetez donc un coup d'oeil la dessus ;o)
      • [^] # Re: Questions ?

        Posté par  . Évalué à 1.

        -L/usr/local/lib/mysql -> le -L signifie que ca va chercher la lib dans usr/local/lib/mysql, t as bien verifie que ct dedans ? ou meme si ca existait ?
        • [^] # Re: Questions ?

          Posté par  . Évalué à 1.

          Sinon j'ai une autre idee, tu modifies la ligne de commande et tu remplaces par -L/usr/lib/mysql le -L/usr/local/lib/mysql.

          Tiens moi au courant =)
          • [^] # Re: Questions ?

            Posté par  . Évalué à 1.

            Oui, j'avais vérifié, et c'est pour ça que je pense qu'il y a un problème d'installation. Car justement, il n'y a absolument rien dans le dossier: /usr/local/lib/ et je ne sais absolument pas pourquoi, et je ne sais pas quoi y mettre pour résoudre correctement le problème (j'ai fait des tentatives, pour remplir ce dossier, mais ça m'engendrait à chaque fois une nouvelle erreur [celle-là étant la dernière d'entre elles]).

            A savoir que tout ce que je fais, je le fais en shell. Donc, si tu as une idée de comment remplir ce dossier, et surtout quoi y mettre, je suis preneur ^_^"

            Merci pour tout.
  • # fichiers de developpements

    Posté par  (site web personnel) . Évalué à 3.

    as-tu les includes (.h) de mysql?
    généralement, il suffit d'installer le paquet mysql-dev de ta distribution, ainis, tu aura les librairies et le includes pour eldeveloppement.

    Tout homme qui dirige, qui fait quelque chose, a contre lui ceux qui voudraient faire la même chose, ceux qui font précisément le contraire, et surtout la grande armée des gens d'autant plus sévères qu'ils ne font rien du tout. -- Jules Claretie

    • [^] # Re: fichiers de developpements

      Posté par  . Évalué à 1.

      Merci pour ta réponse.

      J'ai résolu le problème, à priori, le programme que je cherchais à compiler n'allait pas chercher les library au bon endroit.

      Par contre, le problème d'accès à la SQL persiste. Le programme se lance, mais n'arrive pas à aller chercher les données sur la database correspondant. Et, j'ai le même problème si j'essaie d'accèder à la SQL à distance:
      Can't connect to MySQL server on ....

      Encore merci de ton aide

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.