在 mac m2 上运行
flutter build macos
失败并出现错误
Error: CocoaPods's specs repository is too out-of-date to satisfy dependencies.
To update the CocoaPods specs, run:
pod repo update
运行 pod repo update 并不能解决问题。我尝试过 rm -rf ios/Pods、flutter clear 和 flutter pub get 但似乎没有任何效果。我已经尝试了here可以找到的所有解决方案,但仍然出现相同的错误。这个项目是在 ubuntu 22.04 上创建的,我正在尝试在我的 mac mini m2 上运行它。它有 FlutterFire deps,但我已经在 cli 中运行了更新命令。
我就是这样做的:
导航到项目中的 /ios 文件夹。 删除位于 Your Project/ios/Podfile.lock 的
Podfile.lock
文件。
打开命令提示符并执行命令
pod repo remove trunk
。
这将删除 pod 存储库。
要完全删除 Pod,请根据您的 Mac 芯片运行相应的命令:
对于Intel芯片用户: 运行
pod install --repo-update
。
确保您位于 Flutter 应用程序的 iOS 目录中(使用 cd 命令进行导航)。
对于 M1 或 M2 芯片用户,您的情况是: 如果尚未安装,请在常规终端中运行
sudo arch -x86_64 gem install ffi
来安装 ffi。
然后执行
arch -x86_64 pod install --repo-update
。
如果您遇到有关 cloud_firestore pod 兼容性的错误,请执行以下操作:
打开 Podfile 并找到以 platform :ios 开头的行。
取消注释该行并将最低部署目标设置为“12.0”(或根据需要设置更高版本)。
它应该看起来像:
platform :ios, '12.0'
。
再次运行 arch -x86_64 pod install --repo-update
。
这一次,安装应该可以正常工作了。
通过运行 flutter clean 来清理 Flutter 项目。 最后,执行 flutter run 来运行您的项目。
我用
解决了这个问题macos % sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
然后
pod repo update
pod install