Hello,
I am building my app in Visual Studio 2005 and wish to link to static version of the CRT. To do this I go to my project properties and in Configuration Properties->c/c++->Code Generation I set Runtime Library = /MTd (Multi-threaded Debug). This gives me the following errors:
Linking...
9>MSVCRT.lib(MSVCR80.dll) : error LNK2005: _isupper already defined in LIBCMTD.lib(_ctype.obj)
9>MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)
9>MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info:perator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)
9> Creating library nrcs_imp.lib and object nrcs_imp.exp
9>LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
9>LIBCMTD.lib(crt0init.obj) : warning LNK4098: defaultlib 'msvcrtd.lib' conflicts with use of other libs; use /NODEFAULTLIB:library
9>E:\projects\Assign\pkloc_AssignQT\edm_news\assig n_qt\qt\source\main\Debug\Assign.exe : fatal error LNK1169: one or more multiply defined symbols found
When linking to dynamic version of CRT, by setting Runtime Library = /MDd (Multi-threaded Debug DLL) I get no errors.
How can I fix this?
Bookmarks