在VC++项目的编译链接过程中,libcmt.lib、msvcrt.lib冲突的情况常碰到:
LIBCMTD.lib(crt0dat.obj) : error LNK2005: __cexit 已经在 msvcrtd.lib(MSVCR100D.dll) 中定义
......
发生这个冲突的最主要原因是: 该项目以及该项目导入的各种库(*.lib)的链接方式不一致,
比如导入的库使用/MT, 而项目使用/MD, 或者导入的库使用/MD, 而项目使用/MT
本文详细解释了在VC++项目编译链接过程中,libcmt.lib与msvcrt.lib冲突的原因,并提供了有效的解决方案。主要涉及链接方式不一致导致的问题,如使用/MT与/MD之间的区别与影响。
在VC++项目的编译链接过程中,libcmt.lib、msvcrt.lib冲突的情况常碰到:
LIBCMTD.lib(crt0dat.obj) : error LNK2005: __cexit 已经在 msvcrtd.lib(MSVCR100D.dll) 中定义
......
发生这个冲突的最主要原因是: 该项目以及该项目导入的各种库(*.lib)的链接方式不一致,
比如导入的库使用/MT, 而项目使用/MD, 或者导入的库使用/MD, 而项目使用/MT

被折叠的 条评论
为什么被折叠?
