Expo EAS Build iOS出现未声明标识符等错误,求解析与解决方案
解决方案
1. 先解决xcodebuild not found错误
必须安装Xcode Command Line Tools,iOS的依赖管理、编译工具链完全依赖Xcode相关组件,本地执行pod install或expo prebuild都需要它:
- 执行命令安装:
xcode-select --install,按提示完成安装 - 若已安装但路径异常,执行:
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer - 验证:执行
xcodebuild -version,能输出版本信息即为正常
2. 修复未声明标识符错误(RCTAppSetupXXX)
这类错误是手动修改Podfile破坏了Expo/React Native的默认版本适配导致的,按以下步骤重置:
- 删除当前ios目录,执行
expo prebuild --clean,重新生成适配SDK版本的iOS项目文件 - 不要手动修改生成的Podfile,Expo会自动维护配置兼容性
3. 正确解决folly/experimental/coro/Coroutine.h文件缺失问题
无需手动修改Podfile,用Expo原生适配方案:
- 升级到最新稳定版Expo SDK:执行
expo upgrade,旧SDK版本易出现folly依赖问题 - 若升级后仍有问题,在
app.json或app.config.js中添加iOS Pod配置:"ios": { "pods": [ { "name": "RCT-Folly", "configurations": ["Debug"], "podspec": "https://github.com/facebook/folly/releases/download/v2023.08.07.00/folly-2023.08.07.00.podspec" } ] }
4. 重新执行构建流程
- 清理依赖缓存:
rm -rf node_modules && npm install(或yarn install),再执行npx expo install --fix修复依赖 - 重新预构建:
expo prebuild --clean - 本地验证Pod安装:进入ios目录执行
pod install,确认无错误 - 重新触发EAS构建:
eas build --platform ios --profile preview
补充说明
- 不要随意修改Expo自动生成的Podfile,避免版本不兼容问题
- 纯云端EAS构建可不用安装完整Xcode,但本地预构建、操作iOS项目仍需Command Line Tools支持
内容的提问来源于stack exchange,提问作者keisler-au
相关产品推荐
相关产品推荐

