UE--VS2022编译UE项目出现 error C4668: 没有将“__has_feature”定义为预处理器宏,用“0”替换“#if/#elif”
1>H:\UE\UE_5.0\Engine\Source\Runtime\Core\Public\Experimental\ConcurrentLinearAllocator.h(26): error C4668: 没有将“__has_feature”定义为预处理器宏,用“0”替换“#if/#elif”
1>H:\UE\UE_5.0\Engine\Source\Runtime\Core\Public\Experimental\ConcurrentLinearAllocator.h(26): error C4067: 预处理器指令后有意外标记 - 应输入换行符
还好 我翻遍百度找到了大佬的 博客
踩坑-Error C4668 : 没有将“__has_feature”定义为预处理器宏,用“0”替换“#if/#elif” – 同步Schの秘境
我不清楚可否转载 但是我在此依然作为备忘笔记发布 给佬整点人流量 同时也让同样的问题 不在困惑大家



进行勾选这个就是可以了
2025_11_4 更新
BuildConfiguration.xml文件
另一个方法

打开这个txt文件

它这里说从该文件读取配置

<?xml version="1.0" encoding="utf-8" ?>
<Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
<WindowsPlatform>
<CompilerVersion>14.38.33130</CompilerVersion>
<WindowsSdkVersion>10.0.19041.0</WindowsSdkVersion>
</WindowsPlatform>
</Configuration>
CompilerVersion 修改为对应的 msvc 工具版本即可
2026_3_24
可以去看看
Build Configuration | Unreal Engine 4.27 Documentation | Epic Developer Community

2026_7_23更新
5.8更新后
关于BuildConfiguration.xml文件的配置
已经可以按照官方文档进行配置了

其中
使用项目专用构建配置目录,其中 是通往项目目录路径的路径。<PROJECT_DIRECTORY>/Saved/UnrealBuildTool/BuildConfiguration.xml<PROJECT_DIRECTORY>
在之前5.2版本中是无法使用的 5.8测试可以进行覆盖全局的进行使用 按项目指定 msvc工具版本等等 终于修了 不容易啊
更多推荐



所有评论(0)