新的iMac安装pod遇到了很多的问题,一直失败,网上查找的各种方法貌似都过时了。经过努力,最终安装成功。
安装要点
- 检查ruby的源
gem sources -l
注意:-l为list中的l,不是数字1
显示如下:
*** CURRENT SOURCES ***
https://rubygems.org/
或者为
https://ruby.taobao.org/
上面两个源目前都不能使用了。我的最开始安装失败的原因就是使用了淘宝的源。
- 移除旧源,添加新源
移除旧源
$ gem sources --remove https://ruby.taobao.org/
https://ruby.taobao.org/ removed from sources
添加新源
$ gem sources -a http://gems.ruby-china.org/
http://gems.ruby-china.org/ added to sources
如果http://gems.ruby-china.org/也不可用,可以改为添加https://gems.ruby-china.com
检查下
$ gem sources -l
*** CURRENT SOURCES ***
http://gems.ruby-china.org/
显示已经添加成功
- 更新下gem版本
$ sudo gem update --system
如果是最新的版本会显示
Latest version currently installed. Aborting.
- 安装cocoapods
sudo gem install -n /usr/local/bin cocoapods --pre
安装成功会显示:
Installing ri documentation for cocoapods-1.3.1
22 gems installed
- 验证
输入下面命令查看pod版本
$ pod --version
1.3.1
证明安装成功
升级 cocoapods
如果是以前安装过,要升级,直接执行以下命令即可
sudo gem install cocoapods -n /usr/local/bin
卸载 cocoapods
sudo gem uninstall cocoapods
此时,会出现如图所示的提示
-
选择想要卸载的版本,我选的 2,然后回车
会出现如图所示的提示,显示卸载成功
- 检查下 pod 版本
pod --version
显示卸载成功
遇到的问题
ERROR: While executing gem ... (Gem::DependencyError)
Unable to resolve dependencies: cocoapods requires cocoapods-core (= 1.2.1), cocoapods-downloader (< 2.0, >= 1.1.3), cocoapods-trunk (< 2.0, >= 1.2.0), molinillo (~> 0.5.7), xcodeproj (< 2.0, >= 1.4.4), colored2 (~> 3.1), ruby-macho (~> 1.1)
原因:gem版本过低,需要update,执行下述命令:
$ gem update --system
ERROR: While executing gem ... (OpenSSL::SSL::SSLError)
hostname "gems.ruby-china.org" does not match the server certificate
原因:使用的源证书无效,需要更换新的源,参照步骤1、2解决此问题。
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
原因:没有操作权限,在更新命令前加上sudo即可。例如更新gem
$ sudo gem update --system
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
原因:没有权限不能操作,解决方法是
sudo gem install -n /usr/local/bin cocoapods --pre
Error fetching http://gems.ruby-china.org/:
bad response Not Found 404 (https://gems.ruby-china.org/specs.4.8.gz)
原因:ruby-china 更换了域名,变为 https://gems.ruby-china.com,需要使用 gem sources -a https://gems.ruby-china.com/
参考
cocoaPods安装2017 以及遇到的坑