原文:http://www.cocoachina.com/articles/896368?filter=ios
安装CocoaPods涉及三方面:CocoaPods本身、Ruby环境、Ruby管理工具。原因:
- CocoaPods是用Ruby实现的,所以,使用CocoaPods的前提是处于Ruby环境下。
- 需要用到Ruby管理工具来安装Ruby。管理Ruby的工具有很多,rvm就是其中一个,它提供一个便捷的多版本 Ruby 环境的管理和切换。
安装步骤
最重要的: 保证iOS 系统版本为最新,XCode的版本也是最新。否则会有情况不明的问题。
1. Ruby管理工具rvm的安装
首先检测rvm是否安装:
rvm -v
安装过程:
1\. curl -L https://get.rvm.io | bash -s stable // 安装rvm
2\. source ~/.rvm/scripts/rvm //载入rvm环境
3\. rvm -v //验证rvm是否正常安装
2. 安装Ruby
虽然Mac都自带Ruby,但是CocoaPods的安装需要特定版本的Ruby。而Mac自带的Ruby的版本可能不合适。选哪个版本比较好呢?一般来说,用最新版本的Ruby是最保险的。
安装过程: 1.首先,查看目前的所有Ruby版本。找到最新的版本号。
rvm list known
2.安装最新版本的Ruby
rvm install ruby-xx.xx(xx.xx表示版本号)
3.更改Ruby的软件源。 Ruby的软件源用的是亚马逊的云服务,访问不了。所以,在安装CocoaPods前,需要更改该软件源为我们可以访问的源。修改方式如下。
Ruby源更改动态:
2018.3月以前的时候,Ruby源要更改为:https://gems.ruby-china.org
2018.3月后,Ruby源变了,要更改为:https://gems.ruby-china.com
可以先用【gem sources -l】命令查看源是否为最新的Ruby源(目前是https://gems.ruby-china.com ) 。不是的话再按照3.1的方法把源改为最新的Buby源。
3.1 更改Ruby源
gem sources --remove https://rubygems.org/ (移除https://rubygems.org/下载地址)
gem sources -a https://gems.ruby-china.com (添加https://gems.ruby-china.org/为下载地址)
注意:gem sources -a 后面的这个地址,要用https,而不是http
3.2 检查更改是否成功**
gem sources -l
如果结果显示只有 https://ruby.taobao.org/ 这个下载地址。则表示我们的更改操作正确。
3.安装CocoaPods
1.安装CocoaPods
sudo gem install cocoapods
2.检测安装是否正确
which pod (which命令:查看可执行文件的位置)
3 pod setup(这个步骤,请直接看下面的Tips)
**Tips: 下载速度太慢解决办法 ****备注:以下的(1)-(3)步骤,也可以简化为,拷贝同事的本地的/.cocoapods/repos/下的master文件,放到自己本机的/.cocoapods/repos目录下。
(1.) 进入本机目录:
/.cocoapods/repos
(2.) 终端进入到目录/.cocoapods/repos,然后执行clone Specs项目的语句: git clone https://github.com/CocoaPods/Specs.git 等待其clone完成。终端会显示有clone的进度,比直接执行po d setup更直观。
(3\. )将clone的Specs项目的文件夹改名为master,然后拖到/Users/用户名/.cocoapods/repos目录下。
(4.) 运行 pod install --verbose --no-repo-update 或 pod setup (推荐使用pod install --verbose --no-repo-update。因为--no-repo-update参数禁止了pod setup默认执行的更新spec文件的行为)
所有的项目的 Podspec 文件都托管在https://github.com/CocoaPods/Specs。第一次执行pod setup时,CocoaPods 会将这些podspec索引文件更新到本地的 ~/.cocoapods/repos目录下,这个索引文件比较大。所以第一次更新时非常慢。 pod setup在执行时,会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods/repos目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。
遇到的问题
【问题1】 pod install 的时候,总是install openssl 失败。没有什么信息提示,只是有一大板的红色openssl 的配置文件信息。 【解决】 (1)用openssl-universal(修改podfile文件)。这个办法有点不好的是,有可能引入的其他库也引入了openssl。 (2)有可能是xcode不是最新版本所致(我就是这个问题,当时iOS 系统为10.1.6,xcode的版本为8--最新版本为10.13.2,xcode为9)
【问题2】 Failed to connect to raw.githubusercontent.com port 443: Connection refused 【解决】 这是由于该网址的域名解析被污染的缘故。通过修改hosts可以解决这个问题: 打开/etc/hosts 文件,添加语句:
199.232.4.133 raw.githubusercontent.com
参考文档
1.https://blog.csdn.net/fengsh998/article/details/52172741 2.https://www.cnblogs.com/jiang-xiao-yan/p/5229608.html