我有一些问题安装Alamofire 4.0到我的项目。

我有最新版本的Xcode,运行Swift 3,当我尝试安装alamofire时,我得到了800个编译器错误。

显然

构建Alamofire 4.0.0+需要CocoaPods 1.1.0+

[!some_cocoapod需要CocoaPods版本>= X.Y.Z,这是不满足您的当前版本,Z.Y.X.

我在终端上查看了CocoaPods的版本,它说我的版本是1.0.1。

运行更新没有起作用,我猜是因为CocoaPods 1.1处于测试阶段。

所以我不太确定如何更新到我想去的地方。 除非过时不会导致800个编译错误?这听起来像别的问题吗?


当前回答

在我的M1 Mac上,我为Silicon/Arm64安装了一个单独的Homebrew版本。

Brew升级cocoapods默认为Rosetta安装的自制程序。我一直在运行它,不明白为什么cocoapods没有更新。所以我必须以一种针对M1的方式来运行它而不是罗塞塔。

我以前把Arm brew别名为mbrew。所以我不得不运行mbrew升级cocoapods

其他回答

如果你更新了sudo gem install cocoapods,但它仍然显示旧版本,你只需要在终端中输入bundle update来更新bundle和pod——version将显示你安装的最新版本

对于那些没有sudo的CocoaPods安装(也就是说,你不想授予RubyGems管理权限),你根本不需要sudo命令来更新你的CocoaPods安装:

gem install cocoapods

你可以找到CocoaPods宝石的安装位置:

gem which cocoapods

如果这是在你的主目录下,你绝对应该运行gem install cocoapods而不使用sudo。

最后,要检查当前正在运行的CocoaPods类型:

pod --version

我将“pod 'Alamofire', '~> 4.0'”更改为“pod 'Alamofire',:git => 'https://github.com/Alamofire/Alamofire',:commit => '3cc5b4e'”之后在终端中:“pod install -repo-update”,它可以工作。

如果你启用了系统完整性保护或任何其他权限写入错误,这是自macOS Sierra发布以来默认启用的,你应该更新CocoaPods,在终端中运行这行:

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

安装后,检查pod版本:

pod --version

你将摆脱这个错误:

ERROR:  While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory

它将安装最新的CocoaPods:

Successfully installed cocoapods-x.x.x
Parsing documentation for cocoapods-x.x.x
Installing ri documentation for cocoapods-x.x.x
Done installing documentation for cocoapods after 4 seconds
1 gem installed

如果您正在使用Homebrew,打开终端并输入:

brew upgrade cocoapods

如果不奏效,试试:

brew install cocoapods

之后,运行:

brew link --overwrite cocoapods