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

Mac M1构建Flutter项目安装ffi后仍报CocoaPods配置错误如何解决

M1芯片Mac构建Flutter项目重复提示安装ffi导致pod install失败解决方案

问题表现

在搭载M1系列芯片的ARM架构Mac设备上构建Flutter iOS项目时,首次收到CocoaPods配置提示,要求执行arch -x86_64 sudo gem install ffi,执行命令后重新构建仍抛出相同报错,报错信息如下:

Error: To set up CocoaPods for ARM macOS, run:
arch -x86_64 sudo gem install ffi

Error running pod install

Error launching application on iPhone 13.

报错会导致pod install流程中断,无法在iPhone 13模拟器上正常启动应用。

根因说明

执行官方提示的安装命令后仍报错,核心原因是三类问题:

  • 终端默认以ARM原生架构运行,执行转译安装命令时路径不匹配,装出的ffi为ARM架构,无法被x86模式运行的CocoaPods识别
  • Xcode命令行工具路径错位、许可协议未确认,导致CocoaPods调用编译组件失败
  • 之前安装的CocoaPods来源混杂(比如同时存在gem安装版本和Homebrew安装版本),架构不兼容导致读取不到ffi依赖

分步解决流程

  • 清理异常安装的旧版本ffi
    打开终端执行以下命令,若提示存在多个ffi版本,选择全部版本删除即可:
    sudo gem uninstall ffi
    
  • 修复Xcode命令行工具配置
    执行命令指定Xcode默认路径,并同意最新的开发者许可协议,避免后续组件调用权限报错:
    sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
    sudo xcodebuild -license accept
    
  • 以正确架构安装ffi依赖
    打开访达进入「应用程序」目录,找到终端App,右键选择「显示简介」,勾选使用Rosetta打开选项后重启终端。在重启后的终端中执行ffi安装命令:
    sudo gem install ffi
    
    如果不想修改终端默认打开方式,也可以直接在原终端执行带架构声明的完整安装命令,指定安装路径避免权限问题:
    arch -x86_64 sudo gem install -n /usr/local/bin ffi
    
  • 清理CocoaPods缓存并重新安装依赖
    进入Flutter项目下的ios目录,先移除旧的pod关联、重新初始化CocoaPods后再执行install:
    cd 你的Flutter项目根目录/ios
    pod deintegrate
    pod setup
    arch -x86_64 pod install
    
  • 清理Flutter构建缓存后重新运行
    回到项目根目录,执行Flutter清理命令后重新拉取依赖、启动项目:
    cd ..
    flutter clean
    flutter pub get
    flutter run
    

特殊场景排查

如果走完上述流程仍报错,检查本地CocoaPods安装来源:如果之前通过Homebrew安装过CocoaPods,Homebrew默认安装的ARM架构版本会和gem安装的x86版本冲突,执行以下命令卸载Homebrew版本的CocoaPods后重装gem版本即可:

brew uninstall cocoapods
sudo gem install -n /usr/local/bin cocoapods

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 19:01:21