添加google_sign_in后Flutter iOS项目Cocoapods出现段错误求助
解决M1 Mac上Flutter iOS项目添加google_sign_in后的编译错误
步骤1:彻底清理现有缓存与Pods文件
- 进入项目的iOS目录:
cd ios - 删除Pods文件夹和Podfile.lock:
rm -rf Pods Podfile.lock - 回到项目根目录,清理Flutter缓存:
flutter clean
步骤2:用Rosetta 2兼容模式处理Ruby依赖
- 找到「终端」应用,右键选「显示简介」,勾选「使用Rosetta打开」,重启终端
- 卸载冲突的gem包:
sudo gem uninstall ffi ethon - 以x86架构重新安装ffi:
arch -x86_64 sudo gem install ffi -- --enable-libffi-alloc - 同样以x86架构安装cocoapods:
arch -x86_64 sudo gem install cocoapods
步骤3:重新安装Pods并编译项目
- 再次进入iOS目录:
cd ios - 用Rosetta模式执行pod安装:
arch -x86_64 pod install - 回到根目录启动项目:
flutter run
备选方案:脱离系统Ruby,用Homebrew管理Ruby环境
如果上面的方法无效,试试完全避开系统自带的Ruby:
- 安装Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" - 安装独立Ruby版本:
brew install ruby - 将Homebrew Ruby的路径加入环境变量(针对zsh用户,bash用户改~/.bashrc):
echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> ~/.zshrc source ~/.zshrc - 重新安装cocoapods和ffi:
gem install cocoapods ffi -- --enable-libffi-alloc - 执行
pod install后重新编译项目
内容的提问来源于stack exchange,提问作者Jose
相关产品推荐
相关产品推荐

