Announcement

Collapse
No announcement yet.

error LNK2005

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • error LNK2005

    Hallo,

    ich bekomme beim Auführen eines Programms, das ich ausprobieren wollte, folgende Fehler:

    2>msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: class std::basic_ostream<char,struct std::char_traits<char> > & __thiscall std::basic_ostream<char,struct std::char_traits<char> >:perator<<(class std::basic_ostream<char,struct std::char_traits<char> > & (__cdecl*)(class std::basic_ostream<char,struct std::char_traits<char> > &))" (??6?$basic_ostream@DU?$char_traits@D@std@@@std@@Q AEAAV01@P6AAAV01@AAV01@@Z@Z) ist bereits in cyberx3d.lib(SceneGraph.obj) definiert.

    2>libcpmtd.lib(ios.obj) : error LNK2005: "private: static void __cdecl std::ios_base::_Ios_base_dtor(class std::ios_base *)" (?_Ios_base_dtor@ios_base@std@@CAXPAV12@@Z) ist bereits in msvcprtd.lib(MSVCP80D.dll) definiert.

    2>libcpmtd.lib(locale0.obj) : error LNK2005: "private: static class std::locale::_Locimp * __cdecl std::locale::_Getgloballocale(void)" (?_Getgloballocale@locale@std@@CAPAV_Locimp@12@XZ) ist bereits in msvcprtd.lib(MSVCP80D.dll) definiert.


    Habe schon gegoogelt und das gefunden :
    Sie werden immer Fehler sind 'Fehler LNK2005', wo ein Symbol in der Bibliothek, die Sie verbinden (msvcprtd.lib) wurde bereits in einer anderen Bibliothek (z. B. panels.lib) definiert. Wenn Sie panels.lib Feld 'ignorieren Bibliothek' (in VS2008-Konfigurationseigenschaften--> Linker--> Input--> bestimmte Bibliotheken ignorieren) hinzufügen, werden der Fehler beendet.
    Leider funktioniert das nicht bei mir....

  • #2
    Dann musst du suchen, wo die doppelte Einbindung erfolgt
    Christian

    Comment


    • #3
      Tja, aber wonach genau?

      Comment


      • #4
        Steht doch da :cyberx3d.lib implementiert breits public: class std::basic... die ist in deinem Programm nochmal vorhanden
        Christian

        Comment


        • #5
          Also muss ich schauen wo cyberx3d.lib inkludiert wurde? Das ist nämlich in sehr vielen cpp´s

          Comment


          • #6
            Die LIB wird wohl erst vom Linker benutzt.....Man muss sich ansehen genau wo das passiert und nicht pauschal alles weglöschen
            Christian

            Comment


            • #7
              Habe mir das mal bei einem anderen Programm angeschaut. Da steht der error als warning und dahinter : zweite Definition wird ignoriert.

              Kann man das denn irgendwo einstellen, ob das error oder warning ist?

              Comment


              • #8
                Habe es herausgefunden : Eigenschaften->Linker->Befehlszeile->/FORCE:MULTIPLE

                Comment

                Working...
                X