栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

VS2010默认库“MSVCRTD“,“LIBCMTD与其他库的使用冲突,请使用/NODEFAULTLIB:library

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

VS2010默认库“MSVCRTD“,“LIBCMTD与其他库的使用冲突,请使用/NODEFAULTLIB:library

vs2010+opencv库运行过程中的问题:

链接警告:

1>link : warning LNK4098: 默认库“MSVCRTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>link : warning LNK4098: 默认库“LIBCMTD”与其他库的使用冲突;请使用 /NODEFAULTLIB:library

 解决方法:1.查看项目属性--C/C++--代码生成--运行时库是哪种状态(/MT,/MDd,DLL(/MDd),DLL(/MD))

2.在属性--链接器--命令行--添加

如果是单线程 (libc.lib) 
libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib 

如果是多线程 (libcmt.lib) 
libc.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib 

如果是使用 DLL 的多线程 (msvcrt.lib) 
libc.lib、libcmt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib 

如果是调试单线程 (libcd.lib) 
libc.lib、libcmt.lib、msvcrt.lib、libcmtd.lib、msvcrtd.lib 

如果是调试多线程 (libcmtd.lib) 
libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、msvcrtd.lib 

如果是多线程调试DLL(/MDd),则添加:/NODEFAULTLIB:libc.lib  /NODEFAULTLIB:libcmt.lib   /NODEFAULTLIB:msvcrt.lib   /NODEFAULTLIB:libcd.lib   /NODEFAULTLIB:libcmtd.lib

3.添加后运行程序,出现无法解析的命令,

 则在属性--链接器--输入-附加选项添加:comctl32.lib

4.添加成功后,运行程序 ,出现一个或多个重定义的符号,

 在属性--链接器--命令行添加 /force:multiple ,即可运行成功。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/629398.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号