安装pod遇到了好多坑, 网上搜了好多资料, 看了不少博客, 加上自己碰上的问题, 做个记录.
从头开始安装pod的步骤
1) 安装 RVM
$ \curl -sSL https://get.rvm.io | bash -s stable
检查一下是否安装正确
$ rvm -v
例如: rvm 1.22.17 (stable) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
#查看当前ruby版本
$ ruby -v
ruby 1.8.7
#列出已知的ruby版本
$ rvm list known
#安装ruby 2.3.0
$ rvm install 2.3.0
移除某个版本
$ rvm remove 2.0.0
卸载ruby
rvm implode
设置 Ruby 版本
RVM 装好以后,需要执行下面的命令将指定版本的 Ruby设置为系统默认版本
$ rvm 2.0.0 --default
同样,也可以用其他版本号,前提是你有用 rvm install安装过那个版本
这个时候你可以测试是否正确
$ ruby -v
例如: ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-darwin13.0.0]
2) 安装cocoapods
打开Terminal,然后键入以下命令:
$ sudo gem install cocoapods
执行完这句如果报告以下错误:
ERROR: Could not find a valid gem 'cocoapods' (>= 0), here is why:
Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT: Operation timed out - connect(2) (https://rubygems.org/latest_specs.4.8.gz)
ERROR: Possible alternatives: cocoa pods
这是因为ruby的软件源rubygems.org因为使用亚马逊的云服务,被我天朝屏蔽了,需要更新一下ruby的源,过程如下:
$ gem sources -l (查看当前ruby的源)
$ gem sources --remove https://rubygems.org/
$ gem sources -a https://ruby.taobao.org/
$ gem sources -l
如果gem太老,可以尝试用如下命令升级gem
$ sudo gem update --system
升级成功后会提示: RubyGems system software updated
然后重新执行安装下载命令
$ sudo gem install cocoapods
查看gem版本
$ gem -v
如果报以下错误
ERROR: While executing gem ...(Errno::EPERM)
Operation not permitted - /usr/bin/pod
使用以下方法代替上面的指令
$ sudo gem install -n /usr/local/bin cocoapods
之后pod setup
可能会出现第一个问题
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master
Cloning into 'master'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
# 用以下这个命令能解决问题:
$ sudo gem uninstall cocoa pods //交互时选择 y
$ pod repo remove master
# 然后重新安装即可
pod setup
pod install
可能出现的第二个问题
unable to access git 解决方法
有的方法是https连接模式改成ssh模式,或者是修改代理(这里我用的是鱼摆摆vpn, 其他的vpn需要自己查看IP地址和端口号)
(鱼摆摆代理的例子)
git config --global http.proxy http://127.0.0.1:9743
git config --global https.proxy https://127.0.0.1:9743
git config --global http.sslverify false
(下面的方法是我在网上搜的, 并没有动手操作过)
unable to access git问题
git config --global http.proxy
查询到当前设置了代理,所以我取消这个设置:
git config --global --unset http.proxy
再查询,已经没有了代理,然后再push,成功了
安装pod
pod install --verbose --no-repo-update