CocoaPods 版本1.7.5的安装
2019-09-21 本文已影响0人
GitArtOS
每种语言发展到一个阶段,就会出现相应的依赖管理工具,例如
Java
语言的Maven
,nodejs
的npm
。随着iOS
开发者的增多,业界也出现了为iOS
程序提供依赖管理的工具,它的名字叫做:CocoaPods
。CocoaPods
项目的源码在Github
上管理。该项目开始于2011年8月12日,经过多年发展,现在已经成为iOS
开发事实上的依赖管理标准工具。开发iOS
项目不可避免地要使用第三方开源库,CocoaPods
的出现使得我们可以节省设置和更新第三方开源库的时间。
CocoaPods
是OS X
和iOS
下的一个第三类库管理工具,通过CocoaPods
工具我们可以为项目添加被称为“Pods”的依赖库(这些类库必须是CocoaPods
本身所支持的),并且可以轻松管理其版本。CocoaPods
有两个明显的优势:
- 在引入第三方库时它可以自动为我们完成各种各样的配置,包括配置编译阶段、连接器选项、甚至是ARC环境下的-fno-objc-arc配置等。
- 使用CocoaPods可以很方便地查找新的第三方库,这些类库是比较“标准的”,而不是网上随便找到的,这样可以让我们找到真正好用的类库。在使用CocoaPods之后,我只需要将用到的第三方开源库放到一个名为Podfile的文件中,然后执行pod install。CocoaPods就会自动将这些第三方开源库的源码下载下来,并且为我的工程设置好相应的系统依赖和编译参数。
本文主要是介绍CocoaPods
版本1.7.5的安装
sudo gem install -n /usr/local/bin cocoapods -v 1.7.5
也是最最最最新的CocoaPods
安装教程
打开终端:>_
- 查看当前
Ruby
版本
ruby -v
- 升级
Ruby
环境,首先需要安装rvm
(第一步要下载一些东西等两分钟左右)
curl -L get.rvm.io | bash -s stable
source ~/.bashrc
source ~/.bash_profile
- 查看
rvm
版本
rvm -v
显示如下(或者是其他版本)
rvm 1.29.9 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
- 列出
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[.10]
[ruby-]2.3[.8]
[ruby-]2.4[.6]
[ruby-]2.5[.5]
[ruby-]2.6[.3]
[ruby-]2.7[.0-preview1]
ruby-head
# for forks use: rvm install ruby-head-<name> --url https://github.com/github/ruby.git --branch 2.2
# JRuby
jruby-1.6[.8]
jruby-1.7[.27]
jruby-9.1[.17.0]
jruby[-9.2.7.0]
jruby-head
# Rubinius
rbx-1[.4.3]
rbx-2.3[.0]
rbx-2.4[.1]
rbx-2[.5.8]
rbx-3[.107]
rbx-4[.3]
rbx-head
# TruffleRuby
truffleruby[-19.1.0]
# Opal
opal
# Minimalistic ruby implementation - ISO 30170:2012
mruby-1.0.0
mruby-1.1.0
mruby-1.2.0
mruby-1.3.0
mruby-1[.4.1]
mruby-2[.0.1]
mruby[-head]
# Ruby Enterprise Edition
ree-1.8.6
ree[-1.8.7][-2012.02]
# Topaz
topaz
# MagLev
maglev-1.0.0
maglev-1.1[RC1]
maglev[-1.2Alpha4]
maglev-head
# Mac OS X Snow Leopard Or Newer
macruby-0.10
macruby-0.11
macruby[-0.12]
macruby-nightly
macruby-head
# IronRuby
ironruby[-1.1.3]
ironruby-head
.....
- 安装一个
ruby
版本(这里我选择的是2.6.3版本,当然你也可以选择其他的)
rvm install 2.6.3
我的就出现了下面:
yebinghe@yebinghedeMacBook-Pro ~ % rvm install 2.6.3
Searching for binary rubies, this might take some time.
No binary rubies available for: osx/10.15/x86_64/ruby-2.6.3.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for osx.
Certificates bundle '/usr/local/etc/openssl@1.1/cert.pem' is already up to date.
Requirements installation successful.
Installing Ruby from source to: /Users/yebinghe/.rvm/rubies/ruby-2.6.3, this may take a while depending on your cpu(s)...
ruby-2.6.3 - #downloading ruby-2.6.3, this may take a while depending on your connection...
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 13.8M 100 13.8M 0 0 188k 0 0:01:15 0:01:15 --:--:-- 2734k
ruby-2.6.3 - #extracting ruby-2.6.3 to /Users/yebinghe/.rvm/src/ruby-2.6.3 - please wait
ruby-2.6.3 - #configuring - please wait
ruby-2.6.3 - #post-configuration - please wait
ruby-2.6.3 - #compiling - please wait
ruby-2.6.3 - #installing - please wait
ruby-2.6.3 - #making binaries executable - please wait
ruby-2.6.3 - #downloading rubygems-3.0.6
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 866k 100 866k 0 0 21089 0 0:00:42 0:00:42 --:--:-- 22205
No checksum for downloaded archive, recording checksum in user configuration.
ruby-2.6.3 - #extracting rubygems-3.0.6 - please wait
ruby-2.6.3 - #removing old rubygems - please wait
ruby-2.6.3 - #installing rubygems-3.0.6 - please wait
ruby-2.6.3 - #gemset created /Users/yebinghe/.rvm/gems/ruby-2.6.3@global
ruby-2.6.3 - #importing gemset /Users/yebinghe/.rvm/gemsets/global.gems - please wait
ruby-2.6.3 - #generating global wrappers - please wait
ruby-2.6.3 - #gemset created /Users/yebinghe/.rvm/gems/ruby-2.6.3
ruby-2.6.3 - #importing gemsetfile /Users/yebinghe/.rvm/gemsets/default.gems evaluated to empty gem list
ruby-2.6.3 - #generating default wrappers - please wait
ruby-2.6.3 - #adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
Install of ruby-2.6.3 - #complete
Ruby was built without documentation, to build it run: rvm docs generate-ri
// 注意:安装过程中需要两次按下 Enter 键, 第二次按下后需要输入电脑访问密码(不可见,只管输入就行);
// 如果你电脑没有安装Xcode
和Command Line Tools for Xcode
以及Homebrew
会自动下载安装,建议提前安装这三者.
这里很多小伙伴会遇到错误,大部分是因为没有安装Homebrew
造成,所以所以所以要提前安装比较好
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- 设置为默认版本
rvm use 2.6.3 --default
- 更换源
sudo gem update --system
gem sources --remove https://rubygems.org/
gem sources --add https://gems.ruby-china.com/
我的如下:
sudo gem update --system
Password:
Latest version already installed. Done.
- 为了验证你的
Ruby
镜像是并且仅是ruby-china
,执行以下命令查看
gem sources -l
如果是以下结果说明正确,如果有其他的请自行百度解决
*** CURRENT SOURCES ***
https://gems.ruby-china.com/
- 这时候才正式开始安装
CocoaPods
sudo gem install -n /usr/local/bin cocoapods
我的如下:
yebinghe@yebinghedeMacBook-Pro ~ % sudo gem install -n /usr/local/bin cocoapods
Fetching thread_safe-0.3.6.gem
Fetching tzinfo-1.2.5.gem
Fetching concurrent-ruby-1.1.5.gem
Fetching i18n-0.9.5.gem
Fetching activesupport-4.2.11.1.gem
Fetching nap-1.1.0.gem
Fetching fuzzy_match-2.0.4.gem
Fetching cocoapods-core-1.7.5.gem
Fetching claide-1.0.3.gem
Fetching cocoapods-deintegrate-1.0.4.gem
Fetching cocoapods-downloader-1.2.2.gem
Fetching cocoapods-plugins-1.0.0.gem
Fetching cocoapods-search-1.0.0.gem
Fetching cocoapods-stats-1.1.0.gem
Fetching netrc-0.11.0.gem
Fetching cocoapods-trunk-1.4.0.gem
Fetching cocoapods-try-1.1.0.gem
Fetching molinillo-0.6.6.gem
Fetching atomos-0.1.3.gem
Fetching CFPropertyList-3.0.1.gem
Fetching colored2-3.1.2.gem
Fetching nanaimo-0.2.6.gem
Fetching xcodeproj-1.12.0.gem
Fetching escape-0.0.4.gem
Fetching fourflusher-2.3.1.gem
Fetching gh_inspector-1.1.3.gem
Fetching ruby-macho-1.4.0.gem
Fetching cocoapods-1.7.5.gem
Successfully installed thread_safe-0.3.6
Successfully installed tzinfo-1.2.5
Successfully installed concurrent-ruby-1.1.5
Successfully installed i18n-0.9.5
Successfully installed activesupport-4.2.11.1
Successfully installed nap-1.1.0
Successfully installed fuzzy_match-2.0.4
Successfully installed cocoapods-core-1.7.5
Successfully installed claide-1.0.3
Successfully installed cocoapods-deintegrate-1.0.4
Successfully installed cocoapods-downloader-1.2.2
Successfully installed cocoapods-plugins-1.0.0
Successfully installed cocoapods-search-1.0.0
Successfully installed cocoapods-stats-1.1.0
Successfully installed netrc-0.11.0
Successfully installed cocoapods-trunk-1.4.0
Successfully installed cocoapods-try-1.1.0
Successfully installed molinillo-0.6.6
Successfully installed atomos-0.1.3
Successfully installed CFPropertyList-3.0.1
Successfully installed colored2-3.1.2
Successfully installed nanaimo-0.2.6
Successfully installed xcodeproj-1.12.0
Successfully installed escape-0.0.4
Successfully installed fourflusher-2.3.1
Successfully installed gh_inspector-1.1.3
Successfully installed ruby-macho-1.4.0
Successfully installed cocoapods-1.7.5
Parsing documentation for thread_safe-0.3.6
Installing ri documentation for thread_safe-0.3.6
Parsing documentation for tzinfo-1.2.5
Installing ri documentation for tzinfo-1.2.5
Parsing documentation for concurrent-ruby-1.1.5
Installing ri documentation for concurrent-ruby-1.1.5
Parsing documentation for i18n-0.9.5
Installing ri documentation for i18n-0.9.5
Parsing documentation for activesupport-4.2.11.1
Installing ri documentation for activesupport-4.2.11.1
Parsing documentation for nap-1.1.0
Installing ri documentation for nap-1.1.0
Parsing documentation for fuzzy_match-2.0.4
Installing ri documentation for fuzzy_match-2.0.4
Parsing documentation for cocoapods-core-1.7.5
Installing ri documentation for cocoapods-core-1.7.5
Parsing documentation for claide-1.0.3
Installing ri documentation for claide-1.0.3
Parsing documentation for cocoapods-deintegrate-1.0.4
Installing ri documentation for cocoapods-deintegrate-1.0.4
Parsing documentation for cocoapods-downloader-1.2.2
Installing ri documentation for cocoapods-downloader-1.2.2
Parsing documentation for cocoapods-plugins-1.0.0
Installing ri documentation for cocoapods-plugins-1.0.0
Parsing documentation for cocoapods-search-1.0.0
Installing ri documentation for cocoapods-search-1.0.0
Parsing documentation for cocoapods-stats-1.1.0
Installing ri documentation for cocoapods-stats-1.1.0
Parsing documentation for netrc-0.11.0
Installing ri documentation for netrc-0.11.0
Parsing documentation for cocoapods-trunk-1.4.0
Installing ri documentation for cocoapods-trunk-1.4.0
Parsing documentation for cocoapods-try-1.1.0
Installing ri documentation for cocoapods-try-1.1.0
Parsing documentation for molinillo-0.6.6
Installing ri documentation for molinillo-0.6.6
Parsing documentation for atomos-0.1.3
Installing ri documentation for atomos-0.1.3
Parsing documentation for CFPropertyList-3.0.1
Installing ri documentation for CFPropertyList-3.0.1
Parsing documentation for colored2-3.1.2
Installing ri documentation for colored2-3.1.2
Parsing documentation for nanaimo-0.2.6
Installing ri documentation for nanaimo-0.2.6
Parsing documentation for xcodeproj-1.12.0
Installing ri documentation for xcodeproj-1.12.0
Parsing documentation for escape-0.0.4
Installing ri documentation for escape-0.0.4
Parsing documentation for fourflusher-2.3.1
Installing ri documentation for fourflusher-2.3.1
Parsing documentation for gh_inspector-1.1.3
Installing ri documentation for gh_inspector-1.1.3
Parsing documentation for ruby-macho-1.4.0
Installing ri documentation for ruby-macho-1.4.0
Parsing documentation for cocoapods-1.7.5
Installing ri documentation for cocoapods-1.7.5
Done installing documentation for thread_safe, tzinfo, concurrent-ruby, i18n, activesupport, nap, fuzzy_match, cocoapods-core, claide, cocoapods-deintegrate, cocoapods-downloader, cocoapods-plugins, cocoapods-search, cocoapods-stats, netrc, cocoapods-trunk, cocoapods-try, molinillo, atomos, CFPropertyList, colored2, nanaimo, xcodeproj, escape, fourflusher, gh_inspector, ruby-macho, cocoapods after 21 seconds
28 gems installed
- 如果安装了多个
Xcode
使用下面的命令选择(一般需要选择最近的Xcode
版本)
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
- 安装本地库
pod setup
我的如下:
yebinghe@yebinghedeMacBook-Pro ~ % pod setup
Setting up CocoaPods master repo
$ /usr/bin/git clone https://github.com/CocoaPods/Specs.git --progress --
master
Cloning into 'master'...
remote: Enumerating objects: 16452, done.
remote: Counting objects: 100% (16452/16452), done.
remote: Compressing objects: 100% (15879/15879), done.
remote: Total 3474447 (delta 9237), reused 17 (delta 6), pack-reused 3457995
Receiving objects: 100% (3474447/3474447), 684.55 MiB | 5.23 MiB/s, done.
Resolving deltas: 100% (2104257/2104257), done.
Checking out files: 100% (360270/360270), done.
CocoaPods 1.8.0.beta.2 is available.
To update use: `sudo gem install cocoapods --pre`
[!] This is a test version we'd love you to try.
For more information, see https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.8.0.beta.2
Setup completed
- 执行以上命令后
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/
- 要查看文件下载进度的可以另外打开一个终端窗口(快捷键:选中终端按下
Command+N
组合键),输入以下两行命令回车执行:
cd ~/.cocoapods
du -sh *
14、下载安装完成之后可执行下列命令检查是否可用
yebinghe@yebinghedeMacBook-Pro ~ % pod search SDWebImage
-> SDWebImage (5.1.1)
Asynchronous image downloader with cache support with an UIImageView category.
pod 'SDWebImage', '~> 5.1.1'
- Homepage: https://github.com/SDWebImage/SDWebImage
- Source: https://github.com/SDWebImage/SDWebImage.git
- Versions: 5.1.1, 5.1.0, 5.0.6, 5.0.5, 5.0.4, 5.0.3, 5.0.2, 5.0.1, 5.0.0,
5.0.0-beta6, 5.0.0-beta5, 5.0.0-beta4, 5.0.0-beta3, 5.0.0-beta2, 5.0.0-beta,
4.4.7, 4.4.6, 4.4.5, 4.4.4, 4.4.3, 4.4.2, 4.4.1, 4.4.0, 4.3.3, 4.3.2, 4.3.1,
4.3.0, 4.2.3, 4.2.2, 4.2.1, 4.2.0, 4.1.2, 4.1.1, 4.1.0, 4.0.0, 4.0.0-beta2,
4.0.0-beta, 3.8.3, 3.8.2, 3.8.1, 3.8.0, 3.7.6, 3.7.5, 3.7.4, 3.7.3, 3.7.2, 3.7.1,
3.7.0, 3.6, 3.5.4, 3.5.2, 3.5.1, 3.5, 3.4, 3.3, 3.2, 3.1, 3.0, 2.7.4, 2.7, 2.6,
2.5, 2.4 [master repo]
- Subspecs:
- SDWebImage/Core (5.1.1)
- SDWebImage/MapKit (5.1.1)
-> SDWebImage+ExtensionSupport (3.7.1.2)
Asynchronous image downloader with cache support with an UIImageView category.
Added SD_APP_EXTENSION macro for ios8 extensions
pod 'SDWebImage+ExtensionSupport', '~> 3.7.1.2'
- Homepage: https://github.com/rs/SDWebImage
- Source: https://github.com/glassoff/SDWebImage.git
- Versions: 3.7.1.2, 3.7.1.1 [master repo]
- Subspecs:
- SDWebImage+ExtensionSupport/Core (3.7.1.2)
- SDWebImage+ExtensionSupport/MapKit (3.7.1.2)
......
......
-
CocoaPods
的具体使用,我就不多说了,捣鼓半天你不会用,那你捣鼓它干嘛。闲的吗❓❓❓❓.