You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M1设备React Native 0.66.1项目iOS构建失败Android运行正常如何解决

React Native 0.66.1 iOS端RCT-Folly编译失败解决方案

该错误核心原因为Xcode 14及以上版本移除了老旧C++接口,与React Native 0.66.x依赖的低版本RCT-Folly库不兼容,M系列芯片Mac编译模拟器时触发概率更高。

排查步骤

  • 确认当前Xcode版本,若为14.0及以上版本,可确定为版本兼容性问题
  • 确认Mac芯片架构,M1/M2/M系列芯片需额外处理模拟器架构兼容配置
  • 检查ios目录下Podfile是否存在RCT-Folly的兼容配置

解决方案

方案1:全量清理缓存重装依赖(优先尝试)

依次执行以下命令:

# 清理Xcode构建缓存
rm -rf ~/Library/Developer/Xcode/DerivedData/*
# 进入iOS目录清理Pods缓存
cd ios
rm -rf Pods Podfile.lock
pod deintegrate
# 重新安装pod依赖
pod install --repo-update
# 回到项目根目录清理node_modules
cd ..
rm -rf node_modules package-lock.json yarn.lock
# 重新安装npm依赖
npm install

执行完成后重新运行npx react-native run-ios测试。

方案2:Podfile添加兼容配置

若方案1无效,打开项目ios目录下的Podfile文件,添加或修改post_install代码块如下:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    # 修复RCT-Folly编译错误
    if target.name == 'RCT-Folly'
      target.build_configurations.each do |config|
        config.build_settings['GCC_PREPROCESSOR_DEFINITIONS'] ||= ['$(inherited)', '_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION=1']
      end
    end
    # 适配M系列芯片模拟器架构
    target.build_configurations.each do |config|
      config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
    end
  end
end

修改保存后重新执行pod install,再启动项目编译即可。

方案3:降级Xcode版本

若以上方案均无效,可将Xcode降级到13.x版本,该版本为React Native 0.66.1官方适配的最高Xcode版本。

内容的提问来源于stack exchange,提问作者Genius To1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 18:45:04