CocoaPods 安装问题

1.查看你的ruby源

gem sources -l
输入上面的命令以后,你会得到一下结果

* CURRENT SOURCES *

https://rubygems.org/
这一步是切换ruby的镜像源,mac默认的源地址是rubygems.org,但是这个地址在天朝是不能用,好在咱们有万能的淘宝

update - 2016-11-28:现在淘宝的镜像不维护了,改用https://gems.ruby-china.org

2.切换ruby源到ruby-China

gem sources —remove https://rubygems.org
gem sources -a https://gems.ruby-china.org
3.安装cocoapods

sudo gem install -n /usr/local/bin/cocoapods
如果你的系统低于10.11版本,可以使用一下命令

sudo gem install cocoapods
在这一步很可能会出现下面这么一个恶心的东西:

activesupport requires Ruby version >= 2.2.2
他告诉你,想要安装cocoapods,ruby的版本必须高于2.2.2,那么就只能升级ruby,命令如下:

sudo gem install activesupport -v x.x.x
// 后面的版本号只要高于2.2.2就行了
这个时候,你再去运行上面的安装命令,就可以成功安装的,有些同学使用WiFi来安装,有时候网络不稳定,可能会等的比较久,耐心等待就好了

update 2017.2.13
等你修改或者升级好了gem版本以后,你还可能遇到下面这种问题

fuzzy_match错误

fuzzy_match库安装错误,简直不能忍了,一步步的折磨人…
这个问题是因为路径问题,你只需要指定match的安装位置就行了
改换成下面��这条命令

sudo gem install -n /usr/local/bin cocoapods
有的同学可能会想到另一个问题,我换了路径以后,之前安装的是不是要删掉(强迫症患者),不用担心,gem会复用之前装好的东西的。

4.设置pod仓库

pod setup
这里也有一个坑,那就是当你输入这个命令的时候,会出现这样几个提示:

Setting up CocoaPods master repo
[!] /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
而且一片红色,很让人心火大。其实呢,第一次使用setup命令的时候并不会出现这样的东西,但是有人不能等或者等了好久觉得可能不行了,然后关掉窗口,终止了,这样你以后打开窗口再次使用setup命令的时候,就会一直出现上面那几句提示。这个时候,你可以先移除之前的设置,然后找个网络比较好的地方,继续setup!

sudo rm -fr ~/.cocoapods/repos/master
// 移除命令
5.测试是否安装成功

等setup那一步成功以后,会出现一个绿色的Setup completed!然后使用下面命令测试是否成功.如果成功,则会直接显示一行数字版本号,那么就可以开始上手开发了…

关于如何使用,那么请出门左转,看看这篇文章,很详细的讲解了如何使用cocoapods

6.有时候cocoapods会抽风

有时候,你明明没有动过cocoapods,可他就是坏了,不能用了,比如你在执行pod install的时候可能见到过下面这种问题

[!] Unable to satisfy the following requirements:
- Firebase/Core required by Podfile
None of your spec sources contain a spec satisfying the dependency: Firebase/Core.

You have either:
* out-of-date source repos which you can update with pod repo update.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.

Note: as of CocoaPods 1.0, pod repo update does not happen on pod install by default.
看到这么火红的一片错误,你甚至连把这些信息看完的心情都没有,更别说还是英文的(好吧,无意中透露了什么东西��)…

而且,这个问题更诡异的地方在于,你在Podfile里面导入的相应版本库,他找不到,我擦~~~
github上明明已经更新到某个版本了,你就是从README里面copy出来的,你坚信自己只按了Ctrl + C -> Ctrl + V,难道cocoapods出轨了?WTF?

这个问题的原因在于,你的cocoapods太久没有更新了,以至于版本落后太多…
去更新到最新版本是你的唯一选择,执行下面这个命令来更新到最新的版本:

// 更新到最新的预览版,一次到底
sudo gem install cocoapods –pre
嗯,就是这样,此时你可以安心的放下鼠标等胜利了��
然而,有些同学的电脑可能还是不行,因为cocoapods在本地的缓存
莫慌,执行下面这段万能的命令:

// 移除本地master
sudo rm -fr ~/.cocoapods/repos/master
// 移除本地缓存
sudo rm -fr ~/Library/Caches/CocoaPods/
// 重新setup,如果网速较慢,可以在后面加上 –verbose
pod setup
嗯,差不多了
如果你在setup这一步等了很久,很久,很久,久……
请把该文章网上翻,看第五点

7.Swift3.0问题

又是swift3.0,最近一直在解决这个家伙的问题,各种升级
在cocoapods里面它有时候也会引起问题,在你执行pod install命令的时候,会出现很长一段文字警告信息
好吧,不啰嗦了,直接上方法:

post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config| config.build_settings[‘SWIFT_VERSION’] = ‘3.0’
end
end
end
嗯,是的,就这么办…
如果还是不行,呃…
请出门右拐,看这篇文章

8.搜索到的库版本过低

很多时候,我们会通过search命令搜索github上的repos,找到合适的repo以后直接复制pod ‘xxx’
然而这里很多时候我们搜索到的库,版本其实低于其真正的版本,因为这个搜索其实对本地缓存好的search list进行索引的,而这个索引是在安装cocospod时候的数据,期间某个repo的作者可能更新了

解决这个问题的方法就是更新本地的`list数据,命令如下:

pod repo update

原网页:http://www.jianshu.com/p/d405309a7d4e

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值