React Native 0.62.0在Xcode 13.1构建报错error code 65怎么解决
错误原因
该错误是 React Native 0.62.0 版本与 Xcode 13+ 版本不兼容导致的:Xcode 13 默认使用的 C++ 编译标准高于 RN 0.62.0 内置 ReactCommon 模块要求的版本,最终触发 RCTTurboModuleManager.mm 文件编译失败。
解决方案
按优先级从高到低选择以下方案即可:
方案1:Podfile 增加兼容配置(无需升级RN版本,推荐)
- 打开项目
ios/Podfile文件,找到post_install代码块,添加 ReactCommon 专属编译配置,修改后完整的 post_install 参考如下:
post_install do |installer| installer.pods_project.targets.each do |target| # 修复ReactCommon编译错误 if target.name == "ReactCommon" target.build_configurations.each do |config| config.build_settings['CLANG_CXX_LANGUAGE_STANDARD'] = 'c++17' end end # 原有其他post_install配置请保留在下方 end end
- 执行以下命令清理并重装依赖:
- 进入项目ios目录:
cd ios - 清理旧的Pods缓存:
rm -rf Pods Podfile.lock ~/Library/Developer/Xcode/DerivedData/* - 重新安装Pods:
pod install --repo-update
- 进入项目ios目录:
- 回到项目根目录重新执行RN启动命令即可。
方案2:升级React Native版本
如果项目允许升级核心依赖,可将RN版本升级到0.65.0及以上,这些版本已经官方修复了和Xcode13系列的兼容性问题,升级完成后同步ios配置后重新构建即可。
方案3:回退Xcode版本(临时应急)
如果以上两个方案都不适用,可将Xcode回退到12.5版本,该版本和RN 0.62.0完全兼容,不会触发该编译错误。
内容的提问来源于stack exchange,提问作者Younis Rahman
相关产品推荐
相关产品推荐

