在 VS 中编译项目时出现 error LNK2005 链接错误的解决办法
【问题】
mfcs90d.lib(xxx.obj) : error LNK2005: DllMain@12 already defined in MSVCRTD.lib(xxx.obj)
如:mfcs90d.lib(dllmodul.obj) : error LNK2005:
_DllMain@12 已经在 MSVCRTD.lib(dllmain.obj) 中定义
【原因】
mfcs90d.lib 和 MSVCRTD.lib 的链接顺序不正确。
【解决方法】
需要配置一下项目属性,如下:
“项目属性->配置属性->连接器->输入”
1. 在“忽略特定库“里加入 mfcs90d.lib;MSVCRTD.lib
2. 在“附加依赖库”里加入 mfcs90d.lib MSVCRTD.lib
注:如果是Release版本,就把每个后面的d/D去掉,这样: mfcs90.lib MSVCRT.lib 。
本文由VS软件圈(vssoft.net)发布,不代表VS软件圈立场,转载联系作者并注明出处:https://vssoft.net/vsazwt/VS2005anzhuangwenti/2020/0721/581.html