IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Pb de headers


Sujet :

C++

  1. #1
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut Pb de headers
    Bonjour,

    Je me sers de g++ avec linux.
    J' ai t�l�charg� myql++. Puis install� les fichiers en-t�tes ( .h ) dans le r�pertoire /usr/include/mysql++/, la lib �tant dans le r�pertoire /usr/lib/

    Je lance un test :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
     
    #include <mysql++.h>
    #include <iostream>
     
    int main()
    { std::cout <<  "C' est bien vu jeannot" << std::endl ;
      return 0 ;
    }
    A la compilation j' obtiens le message d' erreur, impossible de trouver mysql++.h

    Comment faire en sorte que g++ aille chercher des "include" dans le r�pertoire /usr/include/mysql++/ ?
    Dois-je recommencer l' installation ? Dans un autre r�pertoire ? Dois-je modifier une variable d' environnement du compilateur g++ ?

    A vrai dire je suis perdu. Si quelqu' un pouvait m' orienter � ce sujet, grand mer�i.

    Cordialement.

  2. #2
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par d�faut
    Il faut soit:
    -mettre ce header avec ceux du compilo
    -soit faire:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    #include "mysql++/mysql++.h"

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut Pb de headers
    Bonsoir,

    R�ponse de s�riousme :
    -mettre ce header avec ceux du compilo
    Oui mais comment ?
    J' ai eu ce m�me probl�me avec l' installation de boost, et Luc Hermitte m' a donn� une solution. Mais j' ai oubli� la solution de Luc.
    Cordialement.

  4. #4
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par d�faut
    Oui mais comment ?
    Directement dans le dossier "include" du compilo et pas dans le sous dossier "mysql++".

  5. #5
    Membre Expert Avatar de KiLVaiDeN
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    2 888
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 2 888
    Par d�faut
    Tu peux aussi regarder du cot� de l'option -I

    -I dir
    Add the directory dir to the list of directories to be searched for header files. See Search Path. Directories named by -I are searched before the standard system include directories. If the directory dir is a standard system include directory, the option is ignored to ensure that the default search order for system directories and the special treatment of system headers are not defeated (see System Headers) .

  6. #6
    Membre �clair�
    Profil pro
    D�veloppeur informatique
    Inscrit en
    Mars 2006
    Messages
    58
    D�tails du profil
    Informations personnelles :
    �ge : 50
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Mars 2006
    Messages : 58
    Par d�faut
    L'option -I me semble une solution plus propre, ca �vite de polluer le r�pertoire d'include du compilateur avec les fichiers .h des librairies diverses et vari�es.

  7. #7
    Membre �m�rite
    Homme Profil pro
    Consultant ERP
    Inscrit en
    F�vrier 2004
    Messages
    644
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Consultant ERP

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 644
    Par d�faut
    D'apr�s ce que je vois, si les libs de mysql++ sont dans /usr/lib et les headers dans /usr/include alors tu ne devrais pas avoir de probl�mes.

    #include <mysql++/mysql++.h>


    Et au link, �a devrait se passer sans probl�mes

  8. #8
    Membre Expert
    Avatar de Pragmateek
    Homme Profil pro
    Formateur expert .Net/C#
    Inscrit en
    Mars 2006
    Messages
    2 635
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 39
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : Formateur expert .Net/C#
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 635
    Par d�faut
    #include <mysql++/mysql++.h>
    Pas tr�s "l�gale" comme �criture:
    <...> c'est pour les headers du compilo, ceux pr�sent � l'origine dans le dossier "include".
    "..." c'est pour ceux qui sont rajout�s par la suite.

  9. #9
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonsoir,
    ( avec linux )

    J' ai du modifier tous les ent�tes de mysql++, en remplacant la d�claration
    # include < mysql.h>
    par
    # include <mysql/mysql.h>
    La d�claration
    #include <mysql++/mysql++.h>
    passe bien.
    Donc pas de probl�me, la compilation du code objet �a marche, mais impossible de lier.
    Pour info mes include sont dans /usr/include/mysql++, et j' ai sem� les librairies de mysql++ dans /usr/lib et /usr/local/lib.
    Rien � faire le bourrin ne veut rien savoir.

    Et franchement je ne vois pas comment sortir de ce casse-t�te ... Si vous pouvez m' aider je vous en remercie par avance.

    Cordialement.

  10. #10
    Membre chevronn� Avatar de Mayti4
    Inscrit en
    F�vrier 2004
    Messages
    442
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2004
    Messages : 442
    Par d�faut
    Citation Envoy� par seriousme
    Pas tr�s "l�gale" comme �criture:
    <...> c'est pour les headers du compilo, ceux pr�sent � l'origine dans le dossier "include".
    "..." c'est pour ceux qui sont rajout�s par la suite.
    Ca d�pend de l'impl�mentation.

    Mais en g�n�rale les fichiers entre <> seront recherch�s dans une liste de dossiers ( $PATH, ligne de commande.. ).

    Et ceux entre "" dans le dossier courant.

    Donc pas de probl�me, la compilation du code objet �a marche, mais impossible de lier.
    Tu as link� libmysqlclient ?

  11. #11
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonsoir,

    (linux)

    Impossible de trouver la biblioth�que de liaison qui se trouve dans /usr/lib et /usr/local/lib .
    Tu as link� libmysqlclient ?
    Je n' y comprends rien !

    Cordialement.

  12. #12
    Membre chevronn� Avatar de Mayti4
    Inscrit en
    F�vrier 2004
    Messages
    442
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2004
    Messages : 442
    Par d�faut
    Je n' y comprends rien !
    As-tu mis "-lmysqlpp -lmysqlclient" dans la ligne de commande ?

  13. #13
    Expert confirm�

    Inscrit en
    Novembre 2005
    Messages
    5 145
    D�tails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par d�faut
    Citation Envoy� par seriousme
    Pas tr�s "l�gale" comme �criture:
    Tu as une reference?

    [/quote]<...> c'est pour les headers du compilo, ceux pr�sent � l'origine dans le dossier "include".
    "..." c'est pour ceux qui sont rajout�s par la suite.[/QUOTE]

    Les regles avec lesquelles choisir entre <> et "" font pour moi partie des conventions de codage.

    J'essaie de rassembler les differents algo de recherche existant dans la page http://www.bourguet.org/cpp/include.html. Si vous connaissez des compilateurs qui ne permettent pas le premier comportement decrit ou qui permettent des choses differentes, ca m'interesse de la completer.

  14. #14
    Inactif  

    Profil pro
    Inscrit en
    D�cembre 2002
    Messages
    534
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : D�cembre 2002
    Messages : 534
    Par d�faut
    Bonjour

    Mayti4 cite
    As-tu mis "-lmysqlpp -lmysqlclient" dans la ligne de commande ?
    Oui je me suis servi de l' option l sur la ligne de commande pour ces librairies qui se trouvent dans /usr/lib mais sous les noms de libmysqlpp et libmysqlclient. Avec extensions .so et .a .

    Rien n' y fait ld me renvoit syst�matiquement l' erreur impossible de trouver la librairie.
    J' ai tout essay�, nomm� le chemin complet dans l' option l , nomm� m�me le nom exact des diff�rentes librairies, rien y fait.

    En fait je ne suis plus confront� � un probl�me de header mais de linkeur !

    C' est vraiment d�primant.
    Si vous avez une astuce ...

    Cordialement.

Discussions similaires

  1. [Réseau] Headers vers un serveur http
    Par gexti dans le forum Entr�e/Sortie
    R�ponses: 5
    Dernier message: 04/05/2004, 14h58
  2. __declspec(dllexport) dans mon fichier header mais...?
    Par Jasmine dans le forum Autres �diteurs
    R�ponses: 1
    Dernier message: 03/03/2004, 18h00
  3. mise en page (Header and Footer) en XML-XSL.
    Par christine dans le forum XSL/XSLT/XPATH
    R�ponses: 4
    Dernier message: 01/03/2004, 16h31
  4. [C#]dimension fixe footer et header datagrid
    Par Dos dans le forum ASP.NET
    R�ponses: 2
    Dernier message: 24/01/2004, 17h45
  5. [MFC] image dans un header de CListCtrl
    Par tut dans le forum MFC
    R�ponses: 3
    Dernier message: 11/06/2003, 15h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo