Im writing a code and included many library files (.lib) with it , when i compile all is fine 0 errors and 0 warnings , but when i built i got problems.
when using VC 6.0 i got this warning

LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library

i tried my code on VC2008 (when compiled all is ok) when i linked i got a warning + 2error messages

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)
MSVCRT.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) already defined in LIBCMTD.lib(typinfo.obj)
LINK : warning LNK4098: defaultlib 'MSVCRT' conflicts with use of other libs; use /NODEFAULTLIB:library
.\Debug/project.exe : fatal error LNK1169: one or more multiply defined symbols found

Please note that i didnt add the libraries stated in the warnings or errors to my project.

What should i do ? any help is appreciated.Thanks

Recommended Answers

All 4 Replies

1) What kind of project did you create? console, win32 windows, something else?

2) what libraries did you try to link with?

thanks for the reply ancient dragon sorry didnt see your post , its a windows 32 application i simply created a source file and added .lib files to it, the .lib files are actually 3rd party files that were supplied to me with their .dlls in order to control certain hardware using open source code

hi all i checked the VC2008 and it also solved the issue there too, i hope that the method stated in the link above solved the problem rather than shutting the warning messages up ,thus hiding greater problems yet to be seen.
Thanks for all

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.