[VS2005] Weigert te linken

Pagina: 1
Acties:

  • TheBlasphemer
  • Registratie: September 2004
  • Laatst online: 13-11-2025
Oke, even een klein overzicht van mijn "solution":
Het hoofdproject is een DLL. Deze heeft twee libraries nodig: GenericLib (wat dingen die ik in aparte lib pleur omdat ze wel redelijk generic zijn), en ZLib (voor wat compressie).
GenericLib zelf heeft ook zlib nodig.
Alle depencies staan goed, de code-generation tabs van de project configuration staan allemaal goed (allemaal op Multi-threaded ipv Multi-threaded DLL).
Toch weigert VS mijn project te compilen, met de volgende foutmelding:
code:
1
2
3
4
5
6
7
1>Linking...
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "protected: unsigned short const * __thiscall std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >::_Myptr(void)const " (?_Myptr@?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@IBEPBGXZ) already defined in genericlib.lib(CSPPack.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: __thiscall std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >::~basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >(void)" (??1?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAE@XZ) already defined in genericlib.lib(CSPPack.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: __thiscall std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >(unsigned short const *)" (??0?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAE@PBG@Z) already defined in genericlib.lib(CSPPack.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "bool __cdecl std::operator<<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >(class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> > const &,class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> > const &)" (??$?MGU?$char_traits@G@std@@V?$allocator@G@1@@std@@YA_NABV?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@0@0@Z) already defined in genericlib.lib(CSPPack.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> > & __thiscall std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >::assign(unsigned short const *,unsigned int)" (?assign@?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAEAAV12@PBGI@Z) already defined in genericlib.lib(CSPPack.obj)
1>msvcprt.lib(MSVCP80.dll) : error LNK2005: "public: __thiscall std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >(class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> > const &)" (??0?$basic_string@GU?$char_traits@G@std@@V?$allocator@G@2@@std@@QAE@ABV01@@Z) already defined in genericlib.lib(CSPPack.obj)

Heeft iemand enig idee wat ik nog over hte hoofd kan hebben gezien?
Het lijkt erop dattie alsnog met de DLL versie van de multi-threaded runtimes gaat linken ("msvcprt.lib(MSVCP80.dll)"), toch is geen van de depencies hierop dependant :(

Alvast bedankt,
TB

EDIT: Als ik alles op Multi-threaded DLL zet werkt het wel. Hmmmz :S Toch wil ik graag Multi-threaded (static) aan de praat hebben :/

[ Voor 10% gewijzigd door TheBlasphemer op 10-03-2006 20:58 ]

[img=http://www.web2messenger.com/smallstatus/w2m/theblasp.png]


  • MSalters
  • Registratie: Juni 2001
  • Laatst online: 27-03 16:52
Gokje: op z'n minst een van de twee libs linkt wel tegen de DLL; als je eigen project dat niet doet heb je een probleem.

Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein