CocoaPods 的简单快速安装方法(Setting up C
原文:http://www.jianshu.com/p/88d7ada1b58b
一、git clone方法安装cocoapods
镜像实在太多坑了,琢磨了一下另一种安装cocoapods的方法。
在终端中,进入该目录。
cd ~/.cocoapods/repos
若没有以上目录,执行下面指令,出现.cocoapods的目录后可以ctrl+c终止安装。sudo gem install cocoapods是常规的安装方法,不过现在只是用来建立一下.cocoapods目录。手动建立.cocoapods目录应该也是可以的,不过没试过。如果能进入~/.cocoapods/repos的目录就忽略下面一条指令。
sudo gem install cocoapods
克隆一个Specs库,在终端必须进入到~/.cocoapods/repos的目录才执行以下命令。
git clone https://github.com/CocoaPods/Specs
完成后,执行open .打开当前目录repos
open .
然后把Specs目录改名为master即可。~/.cocoapods/repos的目录层级如下:
Paste_Image.png
如果gitclone还慢的话,直接上https://github.com/CocoaPods/Specs点击下载。根据上面的目录结构图,放对了就好。
Paste_Image.png
安装中可能遇到的问题
运行pod后显示:"pod: command not found"的错误。赋予/usr/local/bin给予执行与读取权限,执行以下命令。若不行执行sudo chmod 777 /usr/local/bin/。
sudo chmod 700 /usr/local/bin/
安装cocoa pods后,在终端执行pod search第三方框架时出错:[!] Unable to find a pod with name, author, summary, ordescriptionmatching AFNetworking
解决方案:执行rm ~/Library/Caches/CocoaPods/search_index.json
然后再执行pod search第三方框架
pod search afnetworking
看到下面信息说明成功了。
Paste_Image.png
按q退出搜索。
第二种安装方法(不推荐,超级超级慢,建议用上面那种方法安装):
温馨提示:($是不需要输入到终端的)
1.移除现有Ruby默认源
$gem sources --remove https://rubygems.org/
2.添加新镜像(注意淘宝的镜像已经不能用了,https://gems.ruby-china.org 是可以用的。不过这步可能会特别久,但是暂时还没找到减少时间处理的方法。)
$gem sources -a https://gems.ruby-china.org/
3.验证新源是否替换成功
$gem sources -l
4.安装CocoaPods
(1) $sudo gem install cocoapods 备注:苹果系统升级 OS X EL Capitan 后改为 $sudo gem install -n /usr/local/bin cocoapods
(2) $pod setup
5.更新gem
$sudo gem update --system
二、使用CocoaPods:
1.新建工程,并在终端用cd指令到文件夹内
$pod search 第三方
2.新建文件 vim “Podfile”,
$vim Podfile
写入以下内容并保存 小提示:(终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq 可保存退出)
platform :ios, '7.0'
target '项目target名' do
pod 'AFNetworking', '~> 3.1.0'
end
8.导入第三方库
$pod install
pod install与pod update区别:
1.使用pod install来安装新的库,即使你的工程里面已经有了Podfile,并且已经执行过pod install命令了;所以即使你是添加或移除库,都应该使用pod install。
2.使用pod update [PODNAME] 只有在你需要更新库到更新的版本时候用。
小技巧:
最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动
原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update
随笔 © 著作权归作者所有 举报文章
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
赞赏支持
喜欢 34 更多分享
79条评论 只看作者 按时间正序按时间倒序按喜欢排序
WSWshallwe
2楼 · 2016.08.01 17:11
我cd到 ~/.cocoapods 然后用命令查看 文件夹大小,怎么都500多兆了 什么鬼啊 这么大啊 是不是哪里错了 ,楼主可否知道
赞 回复
RasonWu: @eff0b5c3ea55 一开始是三百多兆的,随着你库的安装越来越多,也会变得越来越大。pod install如果它在~/.cocoapods能找到就会自动安装,没找到就重新下载。所以会越来越大。
2016.08.03 09:55 回复
WSWshallwe: @RasonWu 不明觉厉,最后1个多G还没停的节奏,然后我就强制关了终端,试了下还能用,这就算安装成功吗
2016.08.03 10:08 回复
RasonWu: @eff0b5c3ea55 是用git clone https://github.com/CocoaPods/Specs的方法吗?我上了https://github.com/CocoaPods/Specs看了一下,最新的只有80多兆了。
2016.08.03 10:33 回复
添加新评论 还有1条评论, 展开查看
liwendong
3楼 · 2016.08.26 19:45
第一种也慢 咋怎
赞 回复
liwendong
4楼 · 2016.08.26 19:45
Last login: Fri Aug 26 17:39:19 on ttys008
lixianshengdeMacBook-Pro:~ MacBooKPro$ cd ~/.cocoapods/repos
lixianshengdeMacBook-Pro:repos MacBooKPro$ git clone https://github.com/CocoaPods/Specs
Cloning into 'Specs'...
remote: Counting objects: 797324, done.
remote: Compressing objects: 100% (37/37), done.
Receiving objects: 6% (48404/797324), 9.63 MiB | 47.00 KiB/s
赞 回复
liwendong
5楼 · 2016.08.26 19:45
欲哭无泪啊
赞 回复
RasonWu: @liwendong 比较少上,如果还慢的话,直接上https://github.com/CocoaPods/Specs点击下载。有目录结构图,放对了就好。
2016.08.31 12:22 回复
曹奉先: @RasonWu 按照你的方法 不行啊
[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master-1`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.
2016.10.04 19:10 回复
Raul_Zuo: 最后怎么解决的?
2016.10.30 17:39 回复
添加新评论
sevenstar
6楼 · 2016.09.01 13:35
大神QQ上回复我一下啊 遇到问题了!
赞 回复
丶我很抱歉
7楼 · 2016.09.21 15:57
错误:[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master-1`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.
网上找的改正方法(没用):sudo xcode-select -switch /Applications/Xcode.app
赞 回复
丶我很抱歉
8楼 · 2016.09.21 15:58
我已经要崩溃了,求大神指引
赞 回复
RasonWu: @丶我很抱歉 可以在终端执行pod search afnetworking试试看看是不是正常的。还有/Applications/Xcode.app是不是你正在使用的Xcode。pod search afnetworking不正常的话,尝试重新安装cocoapods 试试看,直接上https://github.com/CocoaPods/Specs点击下载。上面有目录结构图,要放对位置。
2016.09.21 16:40 回复
丶我很抱歉: @RasonWu 搜索是正常的 而且我只有一个xcode 哎 不知所措
2016.09.21 16:46 回复
RasonWu: @丶我很抱歉 那还是重装一下cocoapods试试看吧。
2016.09.21 17:39 回复
添加新评论 还有1条评论, 展开查看
夏夜晚风
9楼 · 2016.09.22 09:50
淘宝镜像真的不能用了吗?
1人赞 回复
loser儿: @夏夜晚风 我刚才试的,确实不能用了,可以用这个淘宝镜像https://ruby.taobao.org/网上多数是http://ruby.taobao.org/。少了个S!
2016.10.26 14:36 回复
RasonWu: @loser儿 是都不能用了。可以直接打开 https://ruby.taobao.org/ 里面有说解决方案。不过镜像安装还是挺慢的。
2016.10.26 15:10 回复
添加新评论
爱恨的潮汐
10楼 · 2016.09.29 18:20
谢谢,很有用 :smile:
1人赞 回复
属于一个人的小叮当
11楼 · 2016.10.05 12:13
大神,在么?我现在存在两个镜像,一个是淘宝的一个是china的,怎么删除淘宝镜像?
执行$gem sources --remove https://rubygems.org/指令后提示
source https://rubygems.org/ not present in cache
赞 回复
属于一个人的小叮当
12楼 · 2016.10.05 12:22
已解决,打扰了 :smile:
赞 回复
天海相接
13楼 · 2016.10.11 09:39
这篇文章写得很棒,谢谢。另外当安装cocoa pods完成时,搜索第三方:pod search afnetworking。可能会出现-bash: pod: command not found的错误。解决方案:命令一: sudo gem install -n /usr/local/bin cocoapods / 命令二: sudo chmod +rx /usr/local/bin 。希望你能把这条编辑入文章。
赞 回复
RasonWu: @天海相接 非常感谢,已经加上。
2016.10.11 22:17 回复
添加新评论
愛啲約
14楼 · 2016.10.16 21:02
按照第一种方法我进坑了 大神求解 pod search afnetworking 运行这个死可以出来框架信息 可是 在安装时 pod install 时显示 [!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master-1`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.这是怎么回事呢
赞 回复
RasonWu: @愛啲約 人家说是由于多个xcode,路径变了。可以看看。http://blog.csdn.net/nyh1006/article/details/51355872
2016.10.20 11:22 回复
愛啲約: 问题已经解决了 :relaxed: 学艺不精啊 :sweat: 在终端输入 which ruby_executable_hooks 或 which GEM
把得到的路径复制,打开Xcode-> Product-> cocoaPods - >GEM_PATH 粘贴刚才得到的路径 把最后的/gem 或 /pod去掉
2016.10.20 11:31 回复
Raul_Zuo: 我在terminal输入pod install 也显示同样的问题 改怎么解决呢
2016.10.30 17:46 回复
添加新评论 还有1条评论, 展开查看
cdd49c40a5b7
15楼 · 2016.10.27 12:03
cd ~/.cocoapods/repos
这一步无法执行,显示:-bash: cd: /Users/shangxiaoming/.cocoapods/repos: No such file or directory
是什么原因?
赞 回复
RasonWu: @cdd49c40a5b7 抱歉,我忽略了完全没有安装过的用户是没有~/.cocoapods的目录的。可以查看第二种方法安装。或者执行后面的指令(1) $sudo gem install cocoapods 备注:苹果系统升级 OS X EL Capitan 后改为 $sudo gem install -n /usr/local/bin cocoapods 后,会出现~/.cocoapods目录,继续第一种安装方式。$是不用输入到终端的。
2016.10.27 14:41 回复
cdd49c40a5b7: @RasonWu 谢谢 问题解决了。。。
2016.11.17 11:35 回复
添加新评论
子亦飞鱼
16楼 · 2016.10.31 16:35
Installing SDWebImage (4.0.0-beta2)
[!] Error installing SDWebImage
[!] /usr/bin/git clone https://github.com/rs/SDWebImage.git /var/folders/b_/dctb8_6d301_dv8xnshctv0c0000gn/T/d20161031-8623-lfpkrq --template= --single-branch --depth 1 --branch 4.0.0-beta2
Cloning into '/var/folders/b_/dctb8_6d301_dv8xnshctv0c0000gn/T/d20161031-8623-lfpkrq'...
fatal: unable to access 'https://github.com/rs/SDWebImage.git/': SSLRead() return error -9806
安装的时候出现这种问题不知道怎么解决啊?
赞 回复
FightingLB: @子亦飞鱼 你好 解决了吗 我也遇到这个问题了
2016.12.29 20:11 回复
像个被吓坏的孩子18楼 · 2016.11.09 10:51cd 到项目目录下 pod install macbookprodeMacBook-Pro:popcorntime-ios-master Engineer$ pod installRe-creating CocoaPods due to major version update.Setting up CocoaPods master repo[!] Unable to add a source with url `https://github.com/CocoaPods/Specs` named `master-1`.You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.但是 pod search AFNetworking 可以成功, 我是直接从github上下载的 放到了repos文件夹下面,repos/master/Specs 这个顺序对吗。cocoapods 太难安了 我是xcode8 macOS Sierra 谢谢, 赞 回复RasonWu: @像个被吓坏的孩子 你说的是对的啊。我也有截图出来的。终端里 cd ~/.cocoapods/repos 然后执行open . ~/.cocoapods/repos就是这一个目录了。应该是没问题的才对。~/.cocoapods/repos/master/Specs 是这样一个顺序。2016.11.09 14:51 回复RasonWu: @像个被吓坏的孩子 有人说可能是多个xcode引起的,可以看看。http://www.bubuko.com/infodetail-1038475.html2016.11.09 14:53 回复像个被吓坏的孩子: @RasonWu 不是这个,我只有一个版本的xcode 试了也不行,不管咋的,谢谢你这么及时回复我 :kissing_heart:2016.11.09 16:57 回复 添加新评论 还有5条评论, 展开查看 像个被吓坏的孩子19楼 · 2016.11.09 10:56拜托了 我卡在cocoapods好久了 时刻关注等回复,🎁 赞 回复 Chaos_G20楼 · 2016.11.15 01:53wodeMacBook-Pro:repos chaos_g$ git clone https://github.com/CocoaPods/SpecsCloning into 'Specs'...remote: Counting objects: 905272, done.remote: Compressing objects: 100% (2960/2960), done.error: RPC failed; curl 56 SSLRead() return error -36 955.00 KiB/s fatal: The remote end hung up unexpectedlyfatal: early EOFfatal: index-pack failed这个错误怎么解决 赞 回复RasonWu: @Chaos_G 我没遇到过,看下http://blog.csdn.net/wm9028/article/details/51840759的处理方法2016.11.15 09:49 回复墙上砖: @Chaos_G下载太慢,报错了,用githubclone的那个方法2016.11.23 17:12 回复 添加新评论 cece041721楼 · 2016.11.16 21:18请问按照第一种办法提示Setting up CocoaPods master repofatal: Not a git repository (or any of the parent directories): .git[!] The `master` repo is not a git repo.是为什么呢? 赞 回复 茄子_Apple22楼 · 2016.11.29 19:37[!] The `master` repo requires CocoaPods 1.0.0 - (currently using 0.39.0)Update CocoaPods, or checkout the appropriate tag in the repo.表示安装第一种方法操作了,没有更新成功?运行pod search AFNetworking,还是提示我需要更新,请问怎么破? 赞 回复 龙龙_龙23楼 · 2016.11.29 23:23楼主,小弟我出现这个错误很久了。就是即使我把ruby删掉重新下载。我的sources 源显示什么都没有,就连gem.Ruby.org都没有。然后我有事了你第一种方法。虽然clone成功了.但是当我在sudo gem install cocoapods 的时候一直都是报ERROR: Could not find a valid gem 'cocoapods' (>= 0) in any repository 这个错误,我找了好久也一直没搞清出什么原因。还有我的gem源为什么一直都没有。求楼主帮帮忙啊 赞 回复茄子_Apple: @龙龙_龙 推荐你看这个链接:http://www.jianshu.com/p/dfe970588f95,我这边是通过这个解决的2016.11.30 10:09 回复RasonWu: @龙龙_龙 可以试下sudo gem update --system 。应该是gem比较旧或者重新安装的版本有问题引起的2016.12.01 18:01 回复 添加新评论 nolews24楼 · 2016.12.02 10:44谢谢了 很简单的方式 但我也下了一晚上而已。。。。 赞 回复 paperclouds25楼 · 2016.12.10 09:57:+1: 太棒了! 赞 回复 管饱饱26楼 · 2016.12.16 09:12牛逼,装了两天删除了一次,还是你的第一种方法好用 赞 回复 随风流年27楼 · 2016.12.19 10:09pindexinxideMac-mini:repos pindexinxi$ git clone https://github.com/CocoaPods/SpecsCloning into 'Specs'...remote: Counting objects: 970184, done.remote: Compressing objects: 100% (318/318), done.error: RPC failed; curl 56 SSLRead() return error -98064 bytes/s fatal: The remote end hung up unexpectedlyfatal: early EOFfatal: index-pack failed 赞 回复随风流年: 一直是这个不行,大神求解2016.12.19 10:10 回复 添加新评论 _墙角回忆丅一站28楼 · 2016.12.21 17:59[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master-1`.You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`. 1人赞 回复_墙角回忆丅一站: @_墙角回忆丅一站 pod install 就报这个错2016.12.22 09:39 回复 添加新评论 搬砖公29楼 · 2016.12.26 00:12大神,pod install 和 pod update 出现### Error```RuntimeError - [Xcodeproj] Unknown object version./Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.3.0/lib/xcodeproj/project.rb:217:in `initialize_from_file'/Library/Ruby/Gems/2.0.0/gems/xcodeproj-1.3.0/lib/xcodeproj/project.rb:102:in `open'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer/analyzer.rb:695:in `block (2 levels) in inspect_targets_to_integrate'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer/analyzer.rb:694:in `each'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer/analyzer.rb:694:in `block in inspect_targets_to_integrate'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/user_interface.rb:63:in `section'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer/analyzer.rb:689:in `inspect_targets_to_integrate'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer/analyzer.rb:66:in `analyze'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer.rb:227:in `analyze'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer.rb:151:in `block in resolve_dependencies'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/user_interface.rb:63:in `section'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer.rb:150:in `resolve_dependencies'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/installer.rb:114:in `install!'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/command/update.rb:60:in `run'/Library/Ruby/Gems/2.0.0/gems/claide-1.0.0/lib/claide/command.rb:334:in `run'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/lib/cocoapods/command.rb:50:in `run'/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.0.1/bin/pod:55:in `'/usr/local/bin/pod:22:in `load'/usr/local/bin/pod:22:in `'
是什么原因
赞 回复
RasonWu: @搬砖公 http://www.cnblogs.com/ht-927/p/4483352.html 看下这个行不行。一样的问题。
2016.12.26 09:44 回复
RasonWu: @搬砖公 上面的方法,其实就是重新安装了。
2016.12.26 09:45 回复
搬砖公: @RasonWu 我试过这个了,不行呀,请问到底是什么原因呀
2016.12.26 09:45 回复
添加新评论 还有5条评论, 展开查看
Albin_iOS
30楼 · 2016.12.26 09:43
第一种方法 pod install 报错
[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master-1`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.
怎么解决的啊?
赞 回复
RasonWu: @Albin_iOS 删除master(位置: /Users/用户名/.cocoapods/repos/master) 然后重新安装
2016.12.26 09:48 回复
Albin_iOS: @RasonWu 是重装cocoapod吗?是不是要里面的那个.git?
2016.12.26 09:50 回复
RasonWu: @Albin_iOS 不是项目里的,是重装cocoapod
2016.12.26 09:59 回复
添加新评论
之安z
31楼 · 2017.01.04 09:29
gitclone很慢,网络环境不好总是断,直接下载了master会提示Not a git repository (or any of the parent directories): .git,没有个git信息它没法运行。。。求支招
赞 回复
RasonWu: @之安z 这个是git问题吧,和cocoapod 没啥关系。如果你的库还没有git信息的话,看下http://www.cnblogs.com/super-d2/p/3341864.html
2017.01.04 11:30 回复
RasonWu: @之安z @之安z 这个是git问题吧,和cocoapod 没啥关系。如果你的项目还没有git信息的话,看下http://www.cnblogs.com/super-d2/p/3341864.html
2017.01.04 11:30 回复
之安z: @RasonWu 恩,谢谢楼主的回复。我发现并不是git的问题,直接下载master放在本地时,pod install的时候它的脚本还是会尝试更新Specs,但是下载的master没有gitclone的信息所以就报错了。用pod install --verbose --no-repo-update就忽略更新,就可以运行成功了,只是网络环境真的不允许,就算用了国内的源也还是太慢,已经放弃。。。
2017.01.17 14:40 回复