M1芯片Macbook Flutter项目更新CocoaPods报错解决方案求助
问题解决步骤
一、修复M1芯片下ffi与CocoaPods架构兼容问题
- 先完全卸载系统自带Ruby路径下的冲突组件,避免版本残留:
sudo gem uninstall ffi cocoapods cocoapods-core # 出现版本选择提示时,选择「all」卸载所有相关版本
- 不要使用macOS系统自带的2.6版本Ruby,通过Homebrew安装适配arm64架构的Ruby环境:
brew install ruby
安装完成后按照终端提示,将Homebrew Ruby的路径写入~/.zshrc(或~/.bash_profile)配置文件,确保终端调用的是新安装的Ruby而非系统默认版本。
- 重新安装适配arm架构的ffi和CocoaPods:
gem install ffi gem install cocoapods
- 重置CocoaPods本地spec仓库,清除旧版本缓存:
rm -rf ~/.cocoapods/repos pod setup
二、修复Flutter项目iOS依赖适配问题
- 进入项目的
ios目录,删除所有Pod相关的缓存生成文件:
rm -rf Pods Podfile.lock .symlinks flutter clean flutter pub get
- 修改Podfile的全局平台版本,Firebase 8.0.0要求iOS最低支持版本为11.0,你之前设置的10.0版本过低会导致兼容失败,修改为:
# Uncomment this line to define a global platform for your project platform :ios, '11.0'
- 直接执行pod安装命令,无需加
arch -x86_64前缀,同时强制更新spec源:
pod install --repo-update
三、兜底兼容设置
如果执行完上述步骤仍然存在模拟器运行报错,用Xcode打开项目ios目录下的Runner.xcworkspace做两处配置:
- 在「Build Settings」中找到
Excluded Architectures选项,Debug和Release模式下,都为Any iOS Simulator SDK添加arm64排除项 - 在「Runner - General」选项卡下,将
Minimum Deployments的iOS版本改为11.0,和Podfile配置保持一致
内容的提问来源于stack exchange,提问作者Chinbin
相关产品推荐
相关产品推荐

