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

M1芯片Mac上React Native iOS模拟器构建报错:缺失x86_64架构

解决M1 MacBook Pro上React Native iOS模拟器架构构建问题

我之前帮不少开发者搞定过M1 Mac上React Native模拟器的架构冲突问题,你的情况太典型了,咱们一步步来排查修复:

第一步:彻底清理缓存与Pods残留

旧的缓存和Pods配置很可能是问题根源,先做彻底清理:

  • 打开终端,进入项目的ios目录:cd ios
  • 删除Pods文件夹、Podfile.lock和Xcode派生数据:
    rm -rf Pods Podfile.lock
    rm -rf ~/Library/Developer/Xcode/DerivedData
    
  • 重新安装Pods:pod install

第二步:检查Xcode架构配置

确保项目和Pods项目的架构设置完全统一:

  1. 打开Xcode的.xcworkspace文件(务必不要打开.xcodeproj)
  2. 选中项目根节点,进入「Build Settings」标签:
    • 找到「Architectures」,设置为Standard Architectures (arm64, x86_64)或者$(ARCHS_STANDARD)
    • 找到「Excluded Architectures」,分别为Debug和Release配置添加:
      • 针对iphonesimulator平台,设置值为arm64
    • 找到「Build Active Architecture Only」,确保Debug模式为YES,Release模式为NO
  3. 同样的操作也应用到Pods项目上:选中左侧导航栏的Pods项目,重复上述架构设置步骤

第三步:优化Podfile的post_install脚本

你之前的脚本只覆盖了Pods项目的全局配置,试试这个更全面的版本,确保每个target都正确设置架构:

post_install do |installer|
  # 为每个Pods Target单独设置架构排除规则
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
      config.build_settings["ARCHS[sdk=iphonesimulator*]"] = "$(ARCHS_STANDARD)"
    end
  end
  
  # 全局Pods项目的架构设置
  installer.pods_project.build_configurations.each do |config|
    config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
  end
end

修改后重新执行pod install生效。

第四步:处理OpenSSL-Universal的特殊问题

你遇到的第一个报错就和这个库相关,它在M1上的兼容性容易出问题:

  • 尝试升级库版本,在Podfile里指定兼容版本:
    pod 'OpenSSL-Universal', '~> 1.1.1100'
    
  • 如果还是不行,执行pod deintegrate彻底卸载Pods,再重新执行pod install

第五步:验证构建

  • 关闭Xcode,重新打开.xcworkspace
  • 选择任意iPhone模拟器(比如iPhone 14),先执行「Clean Build Folder」(快捷键Cmd+Shift+K)
  • 再点击构建按钮,应该就能正常编译了

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 08:14:12