最好先安裝完Xcode豺总,并且保證安裝了Xcode Command Line Tool! 最好先安裝完Xcode信认,并且保證安裝了Xcode Command Line Tool>寤恰! 最好先安裝完Xcode赏寇,并且保證安裝了Xcode Command Line Tool<邸!嗅定! 重要的事情說三遍自娩,不然可能會(huì)遇到各種問題。
CocoaPods升級(jí)1.5.3
sudo gem install -n /usr/local/bin cocoapods -v 1.5.3
最新的CocoaPods安裝教程
說明:最近由于使用
sudo gem install cocoapods
命令安裝cocoapods
過程中渠退,出現(xiàn)
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/gems/2.6.0 directory.
文件沒有讀寫權(quán)限問題忙迁,嘗試修改文件權(quán)限也無法成功的情況脐彩,所以優(yōu)先推薦使用Homebrew
進(jìn)行安裝。
打開終端:>_
0姊扔、使用Homebrew
安裝
一惠奸、安裝Homebrew
(如果已經(jīng)安裝過,則跳到下一步)
a:
git clone https://github.com/Homebrew/brew homebrew
等待完成
b:
eval "$(homebrew/bin/brew shellenv)"
brew update --force --quiet
chmod -R go-w "$(brew --prefix)/share/zsh"
等待完成
c:輸入brew
指令
brew
出現(xiàn)
Example usage:
brew search TEXT|/REGEX/
brew info [FORMULA|CASK...]
brew install FORMULA|CASK...
brew update
brew upgrade [FORMULA|CASK...]
brew uninstall FORMULA|CASK...
brew list [FORMULA|CASK...]
等等指令提示恰梢,說明Homebrew安裝成功佛南。
二、使用Homebrew
安裝CocosPods
brew install cocoapods
等待完成嵌言。(期間可能在下載ruby
這個(gè)庫(kù)的時(shí)候會(huì)出現(xiàn)多次失敗嗅回,失敗就重復(fù)執(zhí)行上面的命令,多次就好了??摧茴,其他的庫(kù)若有失敗妈拌,也是多嘗試幾次)
==> Installing cocoapods
==> Pouring cocoapods--1.12.1.arm64_ventura.bottle.tar.gz
?? /Users/liuhao/homebrew/Cellar/cocoapods/1.12.1: 13,430 files, 27.8MB
==> Running `brew cleanup cocoapods`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
最后如果出現(xiàn)這個(gè),沒有失敗Failed
或者Error
的情況
此時(shí)運(yùn)行
pod --version
1.12.1
證明Cocoapods
安裝成功蓬蝶!
1尘分、查看當(dāng)前Ruby版本
ruby -v
2、升級(jí)Ruby環(huán)境丸氛,首先需要安裝rvm(第一步要下載一些東西等兩分鐘左右)
curl -L get.rvm.io | bash -s stable
source ~/.bashrc
source ~/.bash_profile
如果報(bào)錯(cuò):
Failed to connect to raw.githubusercontent.com port 443: Connection refused
我的辦法是切換外網(wǎng)(因?yàn)楣居刑葑优喑睢!;捍堋#┒ㄐ绻麤]有可以自行度娘。
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[.10]
[ruby-]2.3[.7]
[ruby-]2.4[.4]
[ruby-]2.5[.1] // 重點(diǎn)在這里 重點(diǎn)在這里 重點(diǎn)在這里
[ruby-]2.6[.0-preview2] // 測(cè)試版
ruby-head
.....
5、安裝一個(gè)ruby版本(這里我選擇的是2.5.1版本恩掷,當(dāng)然你也可以選擇其他的)
rvm install 2.5.1
正常情況:
// 注意:安裝過程中需要兩次按下 Enter 鍵, 第二次按下后需要輸入電腦訪問密碼(不可見,只管輸入就行);
// 如果你電腦沒有安裝Xcode和Command Line Tools for Xcode以及Homebrew 會(huì)自動(dòng)下載安裝,建議提前安裝這三者.
如果出現(xiàn):
No binary rubies available for: osx/11.5/x86_64/ruby-3.0.0.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for osx.
Installing requirements for osx.
可以先執(zhí)行
rvm autolibs read-only
再執(zhí)行:
rvm install 2.5.1
這里很多小伙伴會(huì)遇到錯(cuò)誤倡鲸,大部分是因?yàn)闆]有安裝Homebrew造成,所以所以所以要提前安裝比較好
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
如果出現(xiàn):
Fetching /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core failed!
首先執(zhí)行
whoami
#查詢出主機(jī)名黄娘,如果你已經(jīng)知道峭状,可以跳過,例如我的:
zxmmax
再執(zhí)行命令:(zxmmax
替換成自己的主機(jī)名)
sudo chown -R zxmmax:staff *
brew doctor
再次執(zhí)行上面brew命令即可逼争。
6优床、設(shè)置為默認(rèn)版本
rvm use 2.5.1 --default
7、更換源
sudo gem update --system
gem sources --remove https://rubygems.org/
gem sources --add https://gems.ruby-china.com/
8誓焦、為了驗(yàn)證你的Ruby鏡像是并且僅是ruby-china胆敞,執(zhí)行以下命令查看
gem sources -l
如果是以下結(jié)果說明正確,如果有其他的請(qǐng)自行百度解決
*** CURRENT SOURCES ***
https://gems.ruby-china.com/
9、這時(shí)候才正式開始安裝CocoaPods
sudo gem install -n /usr/local/bin cocoapods
10移层、如果安裝了多個(gè)Xcode使用下面的命令選擇(一般需要選擇最近的Xcode版本)
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
11启摄、安裝本地庫(kù)
pod setup
注意:有時(shí)候這里會(huì)報(bào)一些ruby相關(guān)的錯(cuò)誤:
Traceback (most recent call last):
6: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/bin/ruby_executable_hooks:10:in `<main>'
5: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/executable-hooks-1.6.0/lib/executable-hooks/hooks.rb:49:in `run'
4: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/executable-hooks-1.6.0/lib/executable-hooks/hooks.rb:49:in `each'
3: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/executable-hooks-1.6.0/lib/executable-hooks/hooks.rb:50:in `block in run'
2: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/rubygems-bundler-1.4.5/lib/rubygems_executable_plugin.rb:4:in `block in <top (required)>'
1: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:92:in `require'
/Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- rubygems-bundler/noexec (LoadError)
10: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/bin/ruby_executable_hooks:10:in `<main>'
9: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/executable-hooks-1.6.0/lib/executable-hooks/hooks.rb:49:in `run'
8: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/executable-hooks-1.6.0/lib/executable-hooks/hooks.rb:49:in `each'
7: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/executable-hooks-1.6.0/lib/executable-hooks/hooks.rb:50:in `block in run'
6: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/rubygems-bundler-1.4.5/lib/rubygems_executable_plugin.rb:4:in `block in <top (required)>'
5: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:156:in `require'
4: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:168:in `rescue in require'
3: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/site_ruby/2.6.0/rubygems/core_ext/kernel_require.rb:168:in `require'
2: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/rubygems-bundler-1.4.5/lib/rubygems-bundler/noexec.rb:131:in `<top (required)>'
1: from /Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/rubygems-bundler-1.4.5/lib/rubygems-bundler/noexec.rb:124:in `check'
/Users/zhouxianming/.rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/rubygems-bundler-1.4.5/lib/rubygems-bundler/noexec.rb:84:in `setup': undefined method `plain_specs' for #<Bundler::RubygemsIntegration:0x00007fa9370511e8> (NoMethodError)
一般是Xcode Command Line Tool
缺失的原因,可以先執(zhí)行
xcode-select --install
進(jìn)行安裝幽钢。
12、執(zhí)行以上命令后
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/
然后就是漫長(zhǎng)的等待傅是,當(dāng)然,網(wǎng)絡(luò)好的情況下會(huì)更快
以下一段忽略,直接看 第13步:
要查看文件下載進(jìn)度的可以另外打開一個(gè)終端窗口(快捷鍵:選中終端按下Command+N組合鍵)匪燕,輸入以下兩行命令回車執(zhí)行
cd ~/.cocoapods
du -sh *
執(zhí)行du -sh *之后會(huì)顯示已下載的文件大小,可以多次執(zhí)行來監(jiān)看下載進(jìn)度喧笔,如果之前還有文件大小帽驯,后來變成0了,可能是網(wǎng)絡(luò)問題书闸,下載已經(jīng)中斷了,需要結(jié)束命令并從新執(zhí)行 pod setup
13尼变、下載安裝完成之后可執(zhí)行下列命令檢查是否可用(第一次使用可能要等一會(huì))
pod search AFNetworking
14、CocoaPods的具體使用
新建一個(gè)Xcode工程浆劲,使用終端cd到工程目錄下
創(chuàng)建Podfile文件:
pod init
之后就可以在項(xiàng)目目錄里看到一個(gè)Podfile文件
打開Podfile文件:
open Podfile
添加:
pod 'AFNetworking'
保存后退出
開始下載:
pod install
CocoaPods版本
pod --version