升级Xcode至10.2后UE4.21.2编译报错:旧PCH格式不再支持
解决UE4.21.2 + Xcode10.2编译报错:PCH file uses an older PCH format that is no longer supported
我之前也踩过Xcode更新后UE4编译出现这个PCH格式不兼容的坑,给你几个亲测有效的解决办法,按顺序试试:
1. 彻底清理项目缓存并重新生成Xcode工程
这是最常用也最有效的办法,步骤如下:
- 先完全关闭UE4编辑器和Xcode
- 找到你的UE4项目文件夹,删除这三个文件夹:
IntermediateSavedBuild
- 右键点击项目的
.uproject文件,选择Generate Xcode Project重新生成工程文件 - 打开新生成的Xcode工程,尝试重新编译
2. 调整Xcode的预编译头设置
如果第一种方法没用,可以手动检查Xcode的PCH相关设置:
- 打开Xcode工程,选中你的项目目标(比如你这里的
BUILDINGESCAPE) - 切换到
Build Settings标签,在搜索框输入Precompiled Headers - 找到
Precompile PCH File选项,确保它的值是Yes - 再找到
PCH File,确认它的路径指向项目正确的PCH文件(通常是Source/BUILDINGESCAPE/BUILDINGESCAPE.h) - 执行
Product -> Clean Build Folder(快捷键Cmd+Shift+K)清理Xcode缓存,然后重新编译
3. 检查UE4版本兼容性
UE4.21.2发布时Xcode10.2还没推出,官方对这个版本的Xcode支持可能有瑕疵:
- 打开Epic Games Launcher,看看4.21系列有没有可用的补丁更新,安装最新的4.21版本补丁
- 如果上述方法都无效,你可以考虑暂时降级Xcode到10.1版本(不过这个操作成本较高,优先尝试前两种方案)
另外,你提供的UOpenDoor组件代码本身没有问题,这个报错是编译环境的预编译头格式不兼容导致的,不需要修改代码~
内容的提问来源于stack exchange,提问作者Vasnot
相关产品推荐
相关产品推荐

