Oon tekemässä jo 1500 riviseksi edennyttä projektia, ja kun rupesin tekemään pikkuista luokkaa (en tiedä, liittyykö tähän), niin kääntäjä on siitä lähtien antanut virheilmoituksia luokan poistosta huolimatta.
Linking... LIBCD.lib(dbgheap.obj) : error LNK2005: _malloc already defined in MSVCRTD.lib(MSVCRTD.dll) LIBCD.lib(dbgheap.obj) : error LNK2005: _realloc already defined in MSVCRTD.lib(MSVCRTD.dll) LIBCD.lib(dbgheap.obj) : error LNK2005: _free already defined in MSVCRTD.lib(MSVCRTD.dll) LIBCD.lib(crt0dat.obj) : error LNK2005: _exit already defined in MSVCRTD.lib(MSVCRTD.dll) LIBCD.lib(crt0dat.obj) : error LNK2005: __exit already defined in MSVCRTD.lib(MSVCRTD.dll) LIBCD.lib(fpinit.obj) : error LNK2005: __ldused already defined in a previous module LIBCD.lib(fpinit.obj) : error LNK2005: __fltused already defined in a previous module LIBCD.lib(strcat.obj) : error LNK2005: _strcpy already defined in MSVCRTD.lib(MSVCRTD.dll) LIBCD.lib(crt0init.obj) : error LNK2005: ___xc_z already defined in MSVCRTD.lib(cinitexe.obj) LIBCD.lib(crt0init.obj) : error LNK2005: ___xc_a already defined in MSVCRTD.lib(cinitexe.obj) LIBCD.lib(crt0init.obj) : error LNK2005: ___xi_z already defined in MSVCRTD.lib(cinitexe.obj) LIBCD.lib(crt0init.obj) : error LNK2005: ___xi_a already defined in MSVCRTD.lib(cinitexe.obj) LIBCD.lib(winxfltr.obj) : error LNK2005: __XcptFilter already defined in MSVCRTD.lib(MSVCRTD.dll) MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _fprintf already defined in LIBCD.lib(fprintf.obj) LINK : warning LNK4098: defaultlib "MSVCRTD" conflicts with use of other libs; use /NODEFAULTLIB:library LINK : warning LNK4098: defaultlib "LIBCD" conflicts with use of other libs; use /NODEFAULTLIB:library MSVCRTD.lib(cinitexe.obj) : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of other libs; use /NODEFAULTLIB:library Debug/Project.exe : fatal error LNK1169: one or more multiply defined symbols found Error executing link.exe. EggThief.exe - 15 error(s), 3 warning(s)
Tämä tuli todella yllättäen, koska en muistaakseni mitään kirjastomuutoksia ole tehnyt lähiaikoina.
Kieli: C++
Ehkä vaikuttavat kirjastot: SDL, OpenGL, freetype
Ympäristö: MSVC++ 6.0
Lueppas tuo virheilmoitus: use /NODEFAULTLIB.
Eli lisääppä tuo /NODEFAULTLIB linkkerin parametreihin (en nyt muista tarkkaan missä se on mutta jostain projektiasetuksista löytyy).
Vaikka laitan tonne "Ignore Libraries:" kohtaan libcd.lib ja/tai msvcrtd.lib, niin se silti antaa virheilmotuksen. Ainoa, mikä vaikuttaa on kun laittaa tuon msvcrt.libin ignoreen, mutta siitä menee vaan toi yks warning pois.
Haha! Uskokaa tai älkää. Tässä on kaikki, mitä tein korjatakseni tämän vian. Yrittäkääpäs etsiä tästä logiikkaa.
-en linkittänyt libcd.libiä -> freetype sanoo error.
-poistin kaikki freetypeosuudet projektista. toimii, mutta ilman fontteja.
-lisäsin libcd:n -> toimii vieläkin
-lisäsin freetypen takaisin, ja toimii mainiosti fonttien kanssa
Täysin absurdia sanoisin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.