库冲突解决办法_过去问题数据库

2020-02-28 其他范文 下载本文

库冲突解决办法由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“过去问题数据库”。

1、打开tinyxml工程。打开项目属性,将“配置属性-->C/C++-->代码生成-->运行时库”设置为“多线程调试 DLL(/MDd)”(因为新工程的设置是这样子)。重新编译tinyxml工程得到tinyxml.lib,拷贝到VS2005的VC的lib文件下。

2、打开项目属性,在“配置属性-->链接器-->命令运”的“附加选项” 把tinyxml.lib加上去。

3、仍有“LIBCMT”冲突错误存在,在 “配置属性-->链接器-->输入-->忽略特定库”中把libcmt.lib添加进去 或者 在“配置属性-->链接器-->命令运”的“附加选项”添加上 /NODEFAULTLIB:libcmt.lib4、重新编译,通过。可以顺利使用tinyxml类操作了。

分享到:

上一篇:linux command

下一篇:LINK : warning LNK4098: 默认库“LIBCMTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library

1>正在链接...1>nafxcw.lib(afxmem.obj): error LNK2005: “void * __cdecl operator new(unsigned int)”(??2@YAPAXI@Z)已经在 LIBCMT.lib(new.obj)中定义 1>nafxcw.lib(afxmem.obj): error LNK2005: “void __cdecl operator delete(void *)”(??3@YAXPAX@Z)已经在 LIBCMT.lib(delete.obj)中定义

1>nafxcw.lib(afxmem.obj): error LNK2005: “void * __cdecl operator new[](unsigned int)”(??_U@YAPAXI@Z)已经在 LIBCMT.lib(new2.obj)中定义 1>nafxcw.lib(afxmem.obj): error LNK2005: “void __cdecl operator delete[](void *)”(??_V@YAXPAX@Z)已经在 LIBCMT.lib(delete2.obj)中定义 1>d:XXXXXXXXTest.exe : fatal error LNK1169: 找到一个或多个多重定义的符号 解决方法: 参见 http://support.microsoft.com/kb/148652/zh-cn

原因在于nafxcw和LIBCMT冲突了, 解决方法就是先link nafxcw.lib即可。

具体操作方法: 工程属性 “连接器”->“输入”->“附加依赖项”里面输入“nafxcw.lib”,这样VC2008编译时会先链接nafxcw.lib,问题就解决了。

补充一句:这是在使用静态MFC库时, 常常出现的错误。一般要么是通过改为使用动态MFC库,要么通过上面的方法来解决。

错误 1 error LNK2005: “void * __cdecl operator new(unsigned int)”(??2@YAPAXI@Z)已经在 LIBCMT.lib(new.obj)中定义 uafxcw.lib setup

问题解决:

在项目属性页-》连接器-》命令行-》附加选项中 添加/force

就可以正常通过编译~

DESCRIPTION 语句不支持目标平台

1>.Release/GINA.dll : warning LNK4088: 因 /FORCE 选项生成了映像;映像可能不能运行

《库冲突解决办法.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
库冲突解决办法
点击下载文档
相关专题 过去问题数据库 解决办法 冲突 过去问题数据库 解决办法 冲突
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文