2018.03.27最新的CocoaPods安装教程
自己装过很多次CocoaPod,中间遇到过各种烦人的问题,也促使自己在不断的摸索中学习到了很多,总结一下,供大家学习研究,以下过程经本人新机测试,一路畅通无任何错误(请严格按照下述方法来做),中间有网络不好的可能会下载中断出错,只要从新执行一下命令就行了.
CocoaPods简介:
CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的、统一管理第三方开源库,为我们节省设置和更新第三方开源库的时间。
CocoaPods安装:
下面就正式开始安装CocoaPods,命令中间可能有空格看不出来,建议直接复制粘贴执行;
因为Mac电脑自带Ruby环境,我们就只需打开终端开始动手。然而又因为默认情况下我们mac系统自带的Ruby环境版本比较低(大概是2.0.0或者其他较高版本),但是现在安装CocoaPods需要2.2.2版本及以上的,所以我们不管三七二十一先直接先升级ruby。
打开终端:>_
1、查看当前Ruby版本(一般都是2.0.0或者其他较高版本)
ruby -v
2、升级Ruby环境,首先需要安装rvm(第一步要下载一些东西等两分钟左右)
curl -L get.rvm.io | bash -s stable
source ~/.bashrc
source ~/.bash_profile
3、查看rvm版本
rvm -v
显示如下
rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
4、列出ruby可安装的版本信息
rvm list known
显示如下
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1] // 重点在这里 重点在这里 重点在这里
ruby-head
.....
5、安装一个ruby版本(这里我选择的是2.4.1版本,当然你也可以选择其他的)
rvm install 2.4.1
// 注意:安装过程中需要两次按下 Enter 键, 第二次按下后需要输入电脑访问密码(不可见,只管输入就行);
// 如果你电脑没有安装Xcode和Command Line Tools for Xcode以及Homebrew 会自动下载安装,建议提前安装这三者.
6、设置为默认版本
rvm use 2.4.1 --default
7、更换源(由于国内被墙,我们需要来修改更换源,把源切换至ruby-china;网上大多数是使用的https://ruby.taobao.org的,这里不再建议使用的了,这是因为taobao Gems 源已停止维护,现由 ruby-china 提供镜像服务)
sudo gem update --system
gem sources --remove https://rubygems.org/
gem sources -a https://gems.ruby-china.org/
8、为了验证你的Ruby镜像是并且仅是ruby-china,执行以下命令查看
gem sources -l
如果是以下结果说明正确,如果有其他的请自行百度解决
*** CURRENT SOURCES ***
https://gems.ruby-china.org/
9、这时候才正式开始安装CocoaPods
sudo gem install -n /usr/local/bin cocoapods
10、如果安装了多个Xcode使用下面的命令选择(一般需要选择最近的Xcode版本)
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
11、安装本地库
pod setup
12、执行以上命令后
Setting up CocoaPods master repo
$ /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
Cloning into 'master'...
remote: Counting objects: 1879515, done.
remote: Compressing objects: 100% (321/321), done.
Receiving objects: 21% (404525/1879515), 73.70 MiB | 22.00 KiB/
然后就是漫长的等待,当然,网络好的情况下会更快
以下一段忽略,直接看 第13步:
要查看文件下载进度的可以另外打开一个终端窗口(快捷键:选中终端按下Command+N组合键),输入以下两行命令回车执行
cd ~/.cocoapods
du -sh *
执行du -sh *之后会显示已下载的文件大小,可以多次执行来监看下载进度,如果之前还有文件大小,后来变成0了,可能是网络问题,下载已经中断了,需要结束命令并从新执行 pod setup
13、下载安装完成之后可执行下列命令检查是否可用(第一次使用可能要等一会)
pod search AFNetworking
14、CocoaPods的具体使用
新建一个Xcode工程,使用终端cd到工程目录下
创建Podfile文件:
pod init
之后就可以在项目目录里看到一个Podfile文件
打开Podfile文件:
open Podfile
添加:
pod 'AFNetworking'
保存后退出
开始下载:
pod install
我这里第一次都会出错,只要再次(看人品)执行就好了,可能是网络或者其他的原因。
网友评论
/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/command.rb:118:in `git_version': Failed to extract git version from `git --version` ("xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun\n") (RuntimeError)
from /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/command.rb:130:in `verify_minimum_git_version!'
from /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/lib/cocoapods/command.rb:49:in `run'
from /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.5.3/bin/pod:55:in `<top (required)>'
from /usr/local/bin/pod:23:in `load'
from /usr/local/bin/pod:23:in `<main>'
第7步骤,第三句命令行更正:
gem sources --add https://gems.ruby-china.com/
详情参考:https://gems.ruby-china.org/
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
Cloning into 'master'...
remote: Counting objects: 2330136, done.
remote: Compressing objects: 100% (323/323), done.
error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
我也没有遇见过这个问题,不行的可以自行百度,Google,这么好的工具不能丢了!!!
Error fetching http://gems.ruby-china.org/:
no such name (http://gems.ruby-china.org/specs.4.8.gz)
pod setup
亲测2M/s +
请叫我雷锋
remote: Counting objects: 1960156, done.
remote: Compressing objects: 100% (392/392), done.
error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
请问这是?
-bash: pod: command not found 请问这个是什么原因造成的,怎么解决,请指教
Password:
GemWrappers: Can not wrap missing file: pod
GemWrappers: Can not wrap missing file: sandbox-pod
Successfully installed cocoapods-1.4.0
Parsing documentation for cocoapods-1.4.0
Done installing documentation for cocoapods after 2 seconds
1 gem installed
我使用这个sudo gem install -n /usr/local/bin cocoapods 更新cocoapods 报错,删除后cocoapods后用sudo gem install cocoapods 这个更新就好了,真奇怪!
Setting up CocoaPods master repo
$ /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
Cloning into 'master'...
remote: Counting objects: 1678482, done.
remote: Compressing objects: 100% (479/479), done.
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
Showing Recent Messages
ld: warning: directory not found for option '-L/Users/wkk/Library/Developer/Xcode/DerivedData/xxx_ios-geuoaelzviehcehjgnxyeqzgnhlh/Build/Products/Debug-iphonesimulator/AFNetworking'
ld: library not found for -lAFNetworking
clang: error: linker command failed with exit code 1 (use -v to see invocation)
总是提示没有这个文件 libPods-xxx_ios.a
工程目录的设置 和pods Architectures 设置也改一致了,也没有使用Git
何解 ?
ERROR : While executing gem ... (Gem::Exception)
Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources
解决方法是https://stackoverflow.com/a/42235933
希望能看见您更多的优秀文章