在Visual Studio 2017中链接ADTF 2.14.2库遇LNK2038错误如何解决?
解决VS2017链接ADTF库时的_MSC_VER版本不匹配问题
错误原因
_MSC_VER是微软编译器的版本标识:
1600对应Visual Studio 20101900对应Visual Studio 2017
你用VS2017编译代码,但链接的adtfutild_1170.lib是用VS2010编译的,编译器版本不兼容导致链接报错。
解决办法
替换为对应VS版本的预编译库
检查ADTF 2.14.2的安装目录,在lib文件夹下寻找适配VS2017的库文件(VS2017对应VC版本为14.1,库文件名通常带vc141后缀,比如adtfutild_vc141.lib),将项目中引用的adtfutild_1170.lib替换为这个对应版本的库。自行编译ADTF源码生成适配库
如果ADTF提供了源码包,用VS2017打开其工程文件,选择x64平台重新编译,生成适配当前编译器的库文件后,再链接到你的项目中。临时降级编译器工具集(不推荐)
把你的项目编译器工具集切换为VS2010版本,不过这种方式可能会导致项目中依赖VS2017新特性的代码无法编译,仅适合项目无高版本特性依赖的应急场景。
内容的提问来源于stack exchange,提问作者RKum
相关产品推荐
相关产品推荐

