ue4.26源码在编译debug版时出现了很多第三方库lib文件链接错误,如下:
amd_ags_x64_2017_MD.lib(AGSMain.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(SharedPCH.Engine.ShadowErrors.h.obj 中)
1>amd_ags_x64_2017_MD.lib(AGSMain.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MD_DynamicRelease”不匹配值“MDd_DynamicDebug”(SharedPCH.Engine.ShadowErrors.h.obj 中)
1>amd_ags_x64_2017_MD.lib(AGSDisplayInfo.obj) : error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“0”不匹配值“2”(SharedPCH.Engine.ShadowErrors.h.obj 中)
主要是ue4这些第三方库都只提供了release配置下的lib,有些库甚至需要对源码进行编译,生成debug版lib
1、Intel\MetricsDiscovery
修改IntelMetricsDiscovery.Build.cs文件,增加如下代码:
public IntelMetricsDiscovery(ReadOnlyTargetRules Target) : base(Target)
{
Type = ModuleType.External;
string IntelMetricsDiscoveryPath = Target.UEThirdPartySourceDirectory + "Intel/MetricsDiscovery/MetricsD