LNK2038错误VC ++ 2013

时间:2014-07-16 03:38:39

标签: c++ linker-errors

我目前正试图将TMX-Parser挂钩到我的游戏中,并且在进行了适当的挂钩之后,我得到以下链接器错误:

Error 1 error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in base64.obj tinyxml.lib(tinyxml.obj)

Error 5 error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in base64.obj tinyxml.lib(tinyxmlparser.obj)

Error 7 error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in base64.obj tinyxml.lib(tinyxmlerror.obj)

Error 4 error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MDd_DynamicDebug' in base64.obj tinyxml.lib(tinyxml.obj)

Error 6 error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MDd_DynamicDebug' in base64.obj tinyxml.lib(tinyxmlparser.obj)

Error 8 error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MDd_DynamicDebug' in base64.obj tinyxml.lib(tinyxmlerror.obj)

我已经做了一些搜索,无法弄清楚如何解决这些问题,如果有人能给我一些帮助,我们将不胜感激。

1 个答案:

答案 0 :(得分:3)

根据错误:
MDd_DynamicDebug - > MDd 多线程DLL调试
MD_DynamicDebug - > MD 多线程DLL发布

您的项目和库使用不同的配置进行编译(某些类型在调试和发布中具有不同的内存布局,用于调试检查和其他技巧)。

其他问题是一个编译中宏 _ITERATOR_DEBUG_LEVEL 的值 0 ,另一个是 2 (一个没有调试检查调试其他的,可能是发布没有和调试是与检查)。这与前一个问题(调试中的成员用于检查的类型)有关,试图用作成员不存在。