1. 主页 > vs安装问题 > VS2015安装问题 >

VS2015错误(一) error LINK2038

        今天发现,在做项目的过程中把问题记下来真是太重要了!前几天电脑坏了,所有的环境都要重新下载配置!光装vs2015就花了三四天!所以,吸取教训,把问题和解决方法记录下来!


        问题1:VS2015 在win64 debug下出现error LINK2038:检测到“RuntimeLibrary”的不匹配项: 值“MT_StaticDebug”不匹配值“MD_DynamicDebug”

        原因:根据提示可以知道咱们的运行库是不匹配的,它需要的是运行库是静态库,而当前设置的是动态库

        解决方法:在工程上右键-》属性-》c/c++-》代码生成-》运行库,将其修改成“多线程(/MTd)“

                      需要注意的是:

                               您要根据自己的实际情况选择库,要弄清您是在debug模式下还是release模式下,是需要静态库还是动态库?                 

                           在选择运行库时,四个选项的对应含义如下:

                                   多线程调试Dll (/MDd) 对应的是MD_DynamicDebug

                                   多线程Dll (/MD) 对应的是MD_DynamicRelease

                                   多线程(/MT) 对应的是MD_StaticRelease

                                   多线程(/MTd)对应的是MD_StaticDebug


          问题2:VS2015 在win64 debug下error LINK2038:或者检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”

          原因:产生这个问题的原因是当前工程是Debug版本,而引用的库文件时Release版本

          解决方法:1、只需要把当前的Debug模式改成Release模式就可以啦

               2、或者打开解决方案--》属性--》链接器--》输入--》附加依赖项中引用debug版本的lib文件名称(通常以d结尾的lib文件时debug版本)

                需要注意的是:     

                如果检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”,则是上述方法倒过来!   

      最后,参考博客,非常感谢两位博主:

         jhgameboy,error LNK2038 RuntimeLibrary 不匹配的解决http://blog.csdn.net/jhgameboy/article/details/24498749

         DaveBobo,error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”:                           http://blog.csdn.net/davebobo/article/details/51125346

本文由VS软件圈(vssoft.net)发布,不代表VS软件圈立场,转载联系作者并注明出处:https://vssoft.net/vsazwt/VS2015anzhuangwenti/2020/0727/5806.html

联系我们

在线咨询:点击这里给我发消息

微信号:PREEE8

工作日:9:30-18:30,节假日休息