/verbose:lib 的作用~~~ ;nafxcwd.lib 和 LIBCMTD.lib ...

工程默认的时候。编译时提示如下:

1>nafxcwd.lib(dllmodul.obj) : error LNK2005:  _DllMain @12  已经在 LIBCMTD.lib(dllmain.obj) 中定义
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" ( ??2@YAPAXI @Z ) 已经在 LIBCMTD.lib(new.obj) 中定义
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" ( ??3@YAXPAX @Z ) 已经在 LIBCMTD.lib(dbgdel.obj) 中定义

可以看出是MFC的库和CRT的库冲突了。一般来说是这哥俩的顺序乱了。mfc的nafxcwd.lib应该在前面,crt的libcmtd.lib应该在后面。
如果当看这些提示,信息可能不全。我们就来介绍一下  /verbose:lib  编译参数。把这个放到 项目-》属性-》连接器-》命令行 中。 然后重新编译项目。就会有如下提示,这样就可以清楚的看到,系统先连接了 libcmtd.lib,然后再连接nafxcwd.lib时出错了。。。

那么我们要做的就是“按顺序排除”冲突的库,再“按正确顺序”附加这两个库就行了。。

也就是 排除时的顺序是 libcmtd.lib;nafxcwd.lib 附加时的顺序是 nafxcwd.lib; libcmtd.lib; 貌似顺序不能搞错哦。。。

加入  /verbose:lib  编译参数 后的输出信息很明了,如下:

1>------ 已启动生成: 项目: HotTxtUserInfo, 配置: Debug Win32 ------
1>  
1>  正在搜索库
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\LIBCMTD.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\OLDNAMES.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\lib\nafxcwd.lib:
1>nafxcwd.lib(dllmodul.obj) : error LNK2005:  _DllMain @12  已经在 LIBCMTD.lib(dllmain.obj) 中定义
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" ( ??2@YAPAXI @Z ) 已经在 LIBCMTD.lib(new.obj) 中定义
1>nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" ( ??3@YAXPAX @Z ) 已经在 LIBCMTD.lib(dbgdel.obj) 中定义
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\kernel32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\user32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\gdi32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\msimg32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\comdlg32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\winspool.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\advapi32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\shell32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\comctl32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\shlwapi.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\uuid.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\lib\atlsd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\ole32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oleaut32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oledlg.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\urlmon.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\odbc32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\odbccp32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\daouuid.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\ws2_32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\mswsock.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\wsock32.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\libcpmtd.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\comsuppwd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\gdiplus.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oleacc.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\imm32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\winmm.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\msxml2.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\LIBCMTD.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\OLDNAMES.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\lib\nafxcwd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\kernel32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\user32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\gdi32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\msimg32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\comdlg32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\winspool.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\advapi32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\shell32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\comctl32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\shlwapi.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\uuid.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\lib\atlsd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\ole32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oleaut32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oledlg.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\urlmon.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\odbc32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\odbccp32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\daouuid.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\ws2_32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\mswsock.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\wsock32.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\libcpmtd.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\comsuppwd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\gdiplus.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oleacc.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\imm32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\winmm.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\msxml2.lib:
1>  
1>  已完成库搜索
1>     正在创建库 I:\project\work\HotProject\DtServer\Debug\HotTxtUserInfo.lib 和对象 I:\project\work\HotProject\DtServer\Debug\HotTxtUserInfo.exp
1>  
1>  正在搜索库
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\LIBCMTD.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\OLDNAMES.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\lib\nafxcwd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\kernel32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\user32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\gdi32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\msimg32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\comdlg32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\winspool.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\advapi32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\shell32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\comctl32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\shlwapi.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\uuid.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\atlmfc\lib\atlsd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\ole32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oleaut32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oledlg.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\urlmon.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\odbc32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\odbccp32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\daouuid.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\ws2_32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\mswsock.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\wsock32.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\libcpmtd.lib:
1>      正在搜索 G:\Program Files\Microsoft Visual Studio 10.0\VC\lib\comsuppwd.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\gdiplus.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\oleacc.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\imm32.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\winmm.lib:
1>      正在搜索 D:\Program Files\Microsoft SDKs\Windows\v7.0A\lib\msxml2.lib:
1>  
1>  已完成库搜索
1>I:\project\work\HotProject\DtServer\Debug\HotTxtUserInfo.dll : fatal error LNK1169: 找到一个或多个多重定义的符号
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

转载于:https://my.oschina.net/871120/blog/173389

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值