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 :

Erreur de lien : redéfinition d'opérateurs


Sujet :

C++

  1. #1
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut Erreur de lien : redéfinition d'opérateurs
    Bonjour à tous,

    Je viens d'ajouter à mon projet la librarie CGAL qui je pense est pas mal pour du traitement d'images.
    Seulement, à l'édition des liens, j'ai les erreurs suivantes:

    msvcprt.lib(MSVCP80.dll) : error LNK2005: "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl std::operator+<char,struct std::char_traits<char>,class std::allocator<char> >(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??$?HDU?$char_traits@D@std@@V?$allocator@D@1@@std@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@ABV10@0@Z) déjà défini(e) dans CGAL.lib(MP_Float.obj)
    msvcprt.lib(MSVCP80.dll) : error LNK2005: "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl std::operator+<char,struct std::char_traits<char>,class std::allocator<char> >(char const *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??$?HDU?$char_traits@D@std@@V?$allocator@D@1@@std@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@PBDABV10@@Z) déjà défini(e) dans CGAL.lib(MP_Float.obj)
    msvcprt.lib(MSVCP80.dll) : error LNK2005: "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __cdecl std::operator+<char,struct std::char_traits<char>,class std::allocator<char> >(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,char const *)" (??$?HDU?$char_traits@D@std@@V?$allocator@D@1@@std@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@0@ABV10@PBD@Z) déjà défini(e) dans CGAL.lib(MP_Float.obj)
    msvcprt.lib(MSVCP80.dll) : error LNK2005: "class std::basic_ostream<char,struct std::char_traits<char> > & __cdecl std::operator<<<struct std::char_traits<char> >(class std::basic_ostream<char,struct std::char_traits<char> > &,char const *)" (??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z) déjà défini(e) dans interpolationBase.obj
    C:\Documents and Settings\GD280706\Bureau\test\delaunay\Release\delaunay.exe : fatal error LNK1169: un ou plusieurs symboles définis à différentes reprises ont été rencontrés
    Quel est ce conflit? Est-ce un conflit avec la STL? Une absence d'espace de noms?

  2. #2
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    Résolu je sais pas vraiment comment...
    Disons que j'ai rajouter les sources et pas seulement les includes dans les options de Visual...

  3. #3
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    Tu veux dire que tu recompiles CGAL avec ton programme ?

    A part ça, tes erreurs me font penser à des versions différentes de la CRT utilisées dans chacune des bibliothèques.

  4. #4
    Membre Expert
    Avatar de poukill
    Profil pro
    Inscrit en
    Février 2006
    Messages
    2 155
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 2 155
    Par défaut
    Non je recompile pas. J'ai juste rajouter les fichiers sources dans les répertoires de VC++. D:/...../CGAL/src

    Oui j'ai encore le :
    LINK : warning LNK4098: conflit entre la bibliothèque par défaut 'MSVCRT' et les autres bibliothèques ; utilisez /NODEFAULTLIB:library
    L'édition des liens se passe correctement, mais ce warning est assez inquiètant quand même, non?
    Ca se résoud comment ce petit problème?

Discussions similaires

  1. erreur de lien
    Par Fredo02 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 19/01/2007, 20h43
  2. Erreur de lien sur templates
    Par Herode dans le forum C++
    Réponses: 27
    Dernier message: 10/04/2006, 09h32
  3. redéfinition des opérateurs en C++
    Par apan dans le forum C++
    Réponses: 11
    Dernier message: 27/03/2006, 15h58
  4. Erreur de lien un peu trop long...
    Par babemagus dans le forum MFC
    Réponses: 2
    Dernier message: 14/06/2005, 10h30
  5. Erreurs de liens Visual C++ .Net
    Par adage2000 dans le forum MFC
    Réponses: 1
    Dernier message: 28/04/2005, 16h48

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