LNK2005 LIBCMT.lib/nafxcw.lib 编译链接错误
来源:互联网 发布:增值税发票软件安装 编辑:程序博客网 时间:2024/05/17 04:59
运行环境:在非MFC程序中,添加MFC支持,静态链接MFC库。
发生错误:
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 delete[](void *)" (??_V@YAXPAX@Z) 已经在 LIBCMT.lib(delete2.obj) 中定义
1>D:\work\yuanxx\日志分析\logExtractTool\Release\logExtractTool.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
错误原因:CRT库和MFC库链接时顺序有误。
CRT 库对 new、delete 和 DllMain 函数使用弱外部链接。MFC 库也包含 new、delete 和 DllMain 函数。这些函数要求先链接 MFC 库,然后再链接 CRT 库。当 C 运行时 (CRT) 库和 Microsoft 基础类 (MFC) 库的链接顺序有误时,可能会出现以下 LNK2005 错误。
解决方法:强制链接器按照正确的顺序链接库!
项目->属性->链接器->输入->附加依赖项,添加:libcpmt.lib nafxcw.lib。
项目->属性->链接器->输入->忽略特定想,添加:nafxcw.lib libcpmt.lib。
- LNK2005 LIBCMT.lib/nafxcw.lib 编译链接错误
- Nafxcw.lib;Libcmt.lib冲突
- CUDA的MFC程序框架中编译出现nafxcw.lib与LIBCMT.lib链接重定义的解决
- LIBCMT.lib : error LNK2005
- LIBCMT.lib 链接错误,DEBUG正常,release编译不过
- nafxcw.lib与LIBCMT.lib在vs2008中链接冲突解决方案
- nafxcw.lib与LIBCMT.lib在vs2008中链接冲突解决方案
- nafxcw.lib错误
- 链接错误LIBCMT.lib(crt0dat.obj) : error LNK2005以及fatal error C1189: #error
- LNK2005 libcmt.lib和msvcrt.lib冲突
- LIBCMT.lib / NODEFAULTLIB 连接错误LNK2005 的解决办法
- LIBCMT.lib(crt0dat.obj) : error LNK2005 错误的解决方法
- VC编译错误: libcmt.lib 已经定义
- 链接错误-库冲突(libcmt.lib和libcmtd.lib)
- 链接错误-库冲突(libcmt.lib和libcmtd.lib)
- 链接错误-库冲突(libcmt.lib和libcmtd.lib)
- LIBCMT.lib与msvcrtd.lib冲突的链接错误
- 链接错误-库冲突(libcmt.lib和libcmtd.lib)
- Ajax核心对象——XMLHttpRequest对象
- EMC问题三规律和三要素
- Flash Recovery Area空间不足导致数据库不能打开或hang住
- RAMN备份集大小估算以及11g压缩备份集的测试
- textarea内容的JS操作
- LNK2005 LIBCMT.lib/nafxcw.lib 编译链接错误
- Viz Artist Script 关于场景(scene script)变量和组(container script)变量
- 几种调用约定[转自百度百科]
- IT人员迅速提升自我效率的十大方法
- arm-linux-eabi 和arm-none-eabi的区别
- SQL语句导入导出大全[收集]
- poj1942
- file_operation
- php.ini配置PHP扩展