您的位置:首页 > 其它

uafxcwd.lib(afxmem.obj) : error LNK2005: 已经在 LIBCMTD.lib(new.obj) 中定义错误解决方案

2016-11-16 15:48 706 查看
刚在试将程序从debug模式转到release模式,然后报错:

nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z)
已经在 LIBCMTD.lib(new.obj) 中定义
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z)
已经在 LIBCMTD.lib(dbgdel.obj) 中定义
nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z)
已经在 LIBCMTD.lib(new2.obj) 中定义
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete[](void *)" (??_V@YAXPAX@Z)
已经在 LIBCMTD.lib(delete2.obj) 中定义
Debug/MediateServer.exe : fatal error LNK1169: 找到一个或多个多重定义的符号

在网上找了一轮也试了一轮,基本都是如下的解决方法:

项目--属性 ---连接器---输入  

                              附加依赖项    空格Nafxcwd.lib Libcmtd.lib

                              忽略指定库    空格Nafxcwd.lib Libcmtd.lib
然后重新生成解决方案,可是改了之后发现说:找不到输入文件Nafxcwd.lib,又找了一轮,没找到简便的解决方法,许多方法推荐将这个Lib的绝对路径加到项目属性中去,觉得应该会有更简单的方法,然而找到了这个:

项目属性页-》链接器-》输入

做如下改动,注意顺序
附加依赖库:uafxcwd.lib;LIBCMTD.lib;

忽略特定默认库:LIBCMTD.lib;uafxcwd.lib

这对应的是debug版本,如果对应release版本的话为:

附加依赖库:uafxcw.lib;LIBCMT.lib;

忽略特定默认库:LIBCMT.lib;uafxcw.lib
(去掉d即可) 

修改过后成功解决,解决方案原文链接地址:
http://www.voidcn.com/blog/lg1259156776/article/p-6243335.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐