码迷,mamicode.com
首页 > 其他好文 > 详细

error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug

时间:2018-04-10 15:05:40      阅读:293      评论:0      收藏:0      [点我收藏+]

标签:编译   1.2   配置   模式   含义   报错   error   代码生成   err   

1. 在工程上右键->属性->c/c++->代码生成->运行库

    四个选项及含义分别如下:

  1.1 /MDd:MD_DynamicDebug,我理解是 “共享DLL中使用MFC” 时的 Debug

  1.2 /MD:MD_DynamicRelease,我理解是 “共享DLL中使用MFC” 时的 Release

  1.3 /MT:MD_StaticRelease,我理解是 “在静态库中使用MFC” 时的 Debug
  1.4 /MTd:MD_StaticDebug,我理解是 “在静态库中使用MFC” 时的 Release

 

2. 在工程上右键->属性->配置属性-->常规-->MFC的使用

  2.1 其中两个选项如下:

  2.2 在共享DLL中使用MFC

  2.3 在静态库中使用MFC

3. 我们有两种编译模式,一种是Release,一种是Debug。

 

问题来了:

 VisualStudio报错:error LNK2038: 检测到“RuntimeLibrary”的不匹配项:  值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug

翻译:这句的意思是 检测到 “运行库” 的不匹配项:值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug

人话:…………………………属性1………………………属性1.4…………………………属性1.1

解决:能够看出来是Debug时的 属性1 和 属性2 不匹配,那要么将 属性1设置为 /MDd,要么将 属性2 设置为 在静态库中使用MFC,反正编译模式、MFC的使用、运行库要三位一体对应起来。

 

error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug

标签:编译   1.2   配置   模式   含义   报错   error   代码生成   err   

原文地址:https://www.cnblogs.com/jieliujas/p/8778389.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!