最近换了一台新mac,自然要重新装一下cocoapods啦。但是,噩梦从此开始了,各种问题都遇到了。下面总结一下今天遇到的一些奇葩问题。推荐一下这篇文章
1.ruby源问题
ruby的默认软件源在亚马逊服务器上,地址是https://rubygems.org/ 但是这个是用不了的,所以我们需要换源
目前国内绝大多数用的是淘宝的镜像:https://ruby.taobao.org/ (很多老教程中使用的是http://ruby.taobao.org/)。
1.sudo gem sources -r https://rubygems/org/
2.sudo gem sources -a https://ruby.taobao.org/
此时出现了:
Error fetching https://ruby.taobao.org/:SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://ruby.taobao.org/specs.4.8.gz)
目前找到的解决办法有这几个。
1.换个镜像呗:http://gems.ruby-china.org/
这个问题的根本原因是ca-bunle中没有包含GlobalSign根证书导致的。目前淘宝提供的解决办法有两个
2.升级ruby gems到2.6.3版本(该版本把GlobalSign加入到了gem的证书链中)
3.更新OpenSSL的ca-bundle到最新
更详细的解释请看github上的Issues
2.Setting up Cocoapods master repo问题
不得不说这个问题真的很让人头疼。当然问题也可以通过使用镜像索引的方法解决
$ pod repo remove master
$ pod repo add master xxxx(镜像地址)
$ pod repo update
但是更换了镜像之后Podfile里面的source也得跟着改变,所以还是慢慢等吧。
3.Setting up Cocoapods master repo 下载过程中报错:
error: RPC failed; result=56, HTTP code = 200
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
这个问题主要是因为需要clone的东西太大了,超出了git的限制,所以我们需要手动调整一下git的配置,网上提供的命令是:
git config http.postBuffer 524288000
但是实际使用的时候变成下面的命令会更好用哦
git config --global http.postBuffer 524288000
4.还是Setting up Cocoapods master repo 过程中报的错
error: RPC failed; curl 56 SSLRead() return error -36或者9806
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
解决方案:
$sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
-switch后面的地址代表的是Xcode包内容中的Contents文件夹下的Developer文件夹路径