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

Boost C++ Discussion :

Problème de link des librairies de Boost


Sujet :

Boost C++

  1. #21
    Membre éclairé Avatar de vanitom
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 327
    Par défaut
    Ba en fait, je ne sais pas si le fait d'avoir _STLP_USE_BOOST_SUPPORT va me corriger le problème.

    Tout ce que je sais, c'est que sans cette définition, j'ai toujours le même erreur de link
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall boost::program_options::options_description::options_description(class stlpd_std::basic_string<char,class stlpd_std::char_traits<char>,class stlpd_std::allocator<char> > const &,unsigned int)" (??0options_description@program_options@boost@@QAE@ABV?$basic_string@DV?$char_traits@D@stlpd_std@@V?$allocator@D@2@@stlpd_std@@I@Z) referenced in function _main
    1>main.obj : error LNK2001: unresolved external symbol "private: virtual void __thiscall boost::program_options::value_semantic_codecvt_helper<char>::parse(class boost::any &,class stlpd_std::vector<class stlpd_std::basic_string<char,class stlpd_std::char_traits<char>,class stlpd_std::allocator<char> >,class stlpd_std::allocator<class stlpd_std::basic_string<char,class stlpd_std::char_traits<char>,class stlpd_std::allocator<char> > > > const &,bool)const " (?parse@?$value_semantic_codecvt_helper@D@program_options@boost@@EBEXAAVany@3@ABV?$vector@V?$basic_string@DV?$char_traits@D@stlpd_std@@V?$allocator@D@2@@stlpd_std@@V?$allocator@V?$basic_string@DV?$char_traits@D@stlpd_std@@V?$allocator@D@2@@stlpd_std@@@2@@stlpd_std@@_N@Z)
    1>main.obj : error LNK2001: unresolved external symbol "class stlpd_std::basic_string<char,class stlpd_std::char_traits<char>,class stlpd_std::allocator<char> > boost::program_options::arg" (?arg@program_options@boost@@3V?$basic_string@DV?$char_traits@D@stlpd_std@@V?$allocator@D@2@@stlpd_std@@A)
    1>main.obj : error LNK2019: unresolved external symbol "public: __thiscall boost::program_options::invalid_option_value::invalid_option_value(class stlpd_std::basic_string<char,class stlpd_std::char_traits<char>,class stlpd_std::allocator<char> > const &)" (??0invalid_option_value@program_options@boost@@QAE@ABV?$basic_string@DV?$char_traits@D@stlpd_std@@V?$allocator@D@2@@stlpd_std@@@Z) referenced in function __catch$??$validate@HD@program_options@boost@@YAXAAVany@1@ABV?$vector@V?$basic_string@DV?$char_traits@D@stlpd_std@@V?$allocator@D@2@@stlpd_std@@V?$allocator@V?$basic_string@DV?$char_traits@D@stlpd_std@@V?$allocator@D@2@@stlpd_std@@@2@@stlpd_std@@PAHJ@Z$0
    1>C:\_dev\apps\tests\link_boost\Debug\link_boost.exe : fatal error LNK1120: 4 unresolved externals
    Voilà

  2. #22
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Ça c'est parce que tu n'as pas lié boost program_options...

  3. #23
    Membre éclairé Avatar de vanitom
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 327
    Par défaut
    Pourtant je pense que la librairie est chargé, car quand je mets la définition BOOST_LIB_DIAGNOSTIC j'obtiens la ligne suivante lors de la compilation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Linking to lib file: libboost_program_options-vc90-mt-gdp-1_38.lib
    Je viens de tester avec les includes de BOOST 1.35 et je n'ai plus les erreurs. J'ai recompilé la lib "program_options" mais j'ai toujours mes problèmes de link cité précédemment.

    Sinon cela ne pourrait pas venir d'une incompatibilité entre mes lib boost et les propriété de compilation de mon projet ?

  4. #24
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Ta version de boost program options a-t-elle été compilée avec la même version de la bibliothèque standard que celle que tu utilises ?

  5. #25
    Membre éclairé Avatar de vanitom
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    327
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 327
    Par défaut
    Oui j'ai bien compiler boost avec la même version. Celle avec laquelle je compile mon programme.

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/01/2011, 15h29
  2. Problème pour insérer des librairies
    Par johann974 dans le forum Débuter
    Réponses: 7
    Dernier message: 18/04/2008, 16h53
  3. Réponses: 4
    Dernier message: 06/03/2008, 10h22
  4. problème de link des fichiers moc
    Par scol30 dans le forum Qt
    Réponses: 3
    Dernier message: 30/12/2006, 16h12
  5. Problème d'importation des librairies j2ee
    Par had35 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 28/08/2006, 12h04

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