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

Mac M1设备React Native项目iOS端Pod安装报错问题求助

M1芯片Mac CocoaPods安装失败修复方案

两个报错的核心原因:

  1. ffi安装报权限错误,是因为调用了Mac系统自带的Ruby 2.6环境,该目录受系统完整性保护(SIP)锁定,即便加sudo也没有写入权限,所有往系统Ruby路径安装gem包的操作都会触发这个错误。
  2. CocoaPods报bad interpreter错误,是因为之前通过Homebrew安装的CocoaPods关联的Ruby路径被删除或改动,软链接失效,pod命令找不到对应Ruby解释器。

分步修复操作

  • 清理旧的无效残留文件
    先删除之前失效的pod命令和Homebrew版旧CocoaPods:
    sudo rm -rf /opt/homebrew/bin/pod
    brew uninstall --force cocoapods
    
  • 安装独立Ruby环境,替换系统自带Ruby
    不要使用Mac系统预置的Ruby环境做开发,直接通过Homebrew安装独立维护的Ruby版本,从根源规避系统目录权限问题:
    brew install ruby
    
    安装完成后把Homebrew版Ruby的路径加到终端环境变量里,Mac默认用zsh终端的话直接执行以下命令:
    echo 'export PATH="/opt/homebrew/opt/ruby/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
    
    如果你用的是bash终端,把上面命令里的.zshrc替换成.bash_profile即可。
    配置完成后执行which ruby验证,返回结果为/opt/homebrew/opt/ruby/bin/ruby就说明环境配置正确,不再调用系统目录下的Ruby。
  • 重新安装CocoaPods和ffi依赖
    此时不需要加sudo,M1原生环境直接执行安装命令即可:
    gem install cocoapods
    gem install ffi
    
    安装完成后执行pod --version,能正常输出版本号就说明CocoaPods基础环境修复完成。
  • 项目内重新执行pod安装
    进入项目的ios目录,先清理旧的pod关联缓存再重新安装依赖:
    cd 你的项目根目录/ios
    pod deintegrate
    pod install
    

要是执行pod install时仍提示架构兼容错误,可以在命令前加arch -x86_64前缀执行,即arch -x86_64 pod install,此时用的是独立Ruby环境,不会再触发之前的系统目录权限报错。

内容的提问来源于stack exchange,提问作者M.Kalidass

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 05:09:20