Probleme de linkage sous Visual C++ [C++] - C++ - Programmation
Marsh Posté le 17-02-2004 à 21:30:29
C'est une lib par défaut de tout projet.
hataka a écrit : LINK : warning LNK4098: defaultlib "LIBCMTD" conflicts with use of other libs; use /NODEFAULTLIB:library |
Ben voilà. Rajoute /NODEFAULTLIB:libcmtd.lib dans les options du linker.
Ça peut venir d'autre chose. (eg ordre des includes, si tu as changé qq chose dans ton projet)
Marsh Posté le 17-02-2004 à 21:32:34
LES CRT MALEFIQUES ONT ENCORE FRAPPEEEEEE
(les includes, ca changera quequette)
c'est pour une DLL ? un Exe ? tu utilises des libs annexes ?
Marsh Posté le 17-02-2004 à 21:35:48
chrisbk a écrit : LES CRT MALEFIQUES ONT ENCORE FRAPPEEEEEE |
futur métier, exorciste vc++.
Les includes peuvent avoir une incidence (he oui, c'est vicieux) http://support.microsoft.com/defau [...] us;q148652
Marsh Posté le 17-02-2004 à 21:36:20
chrisbk a écrit : LES CRT MALEFIQUES ONT ENCORE FRAPPEEEEEE |
c'est pour un Exe et j'utilise effectivement des libs annexes
Marsh Posté le 17-02-2004 à 21:38:24
youdontcare a écrit : futur métier, exorciste vc++. |
j'ai essayé de mettre en garde mais bon
http://forum.hardware.fr/forum2.ph [...] 362&cat=10
sinon ton lien c'est surtout l'ordre des libs pas des includes ?
(ah merde pas vu la fin. je bookmark, on sait jamais)
Marsh Posté le 17-02-2004 à 21:40:33
hataka a écrit : |
youdont a parlé d'or, exclue libcmtd des lib linkées. (meme si c'est plus du pis-aller qu'autre chose)
sinon il te faut recompiler les libs externe que tu utilise en prenant garde a ce que dans
prject->C/C++->codeGeneration le truc soit bien mis sur "Single Threaded" et pas "DLL Multi threaded"
Marsh Posté le 17-02-2004 à 20:05:41
Voici ce que j'ai apres le linkage (sous Visual C++ 6.0 sp5):
xilink6: executing 'E:\PROGRA~1\MICROS~1\VC98\Bin\link.exe'
LIBCMTD.lib(dosmap.obj) : error LNK2005: __dosmaperr already defined in LIBCD.lib(dosmap.obj)
LIBCMTD.lib(tolower.obj) : error LNK2005: __tolower already defined in LIBCD.lib(tolower.obj)
LIBCMTD.lib(tolower.obj) : error LNK2005: _tolower already defined in LIBCD.lib(tolower.obj)
LINK : warning LNK4098: defaultlib "LIBCMTD" conflicts with use of other libs; use /NODEFAULTLIB:library
Debug/dvdstreamer.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing xilink6.exe.
pourtant je n'ai jamais ajouté la librairie LIBCMTD.lib a mon projet. Est-ce qu'il y a moyen de la désactiver? ou y a-t-il une autre solution?