cocoapods安裝

一般使用的Ruby版本是Mac系統(tǒng)自帶的败明,可能版本較低隘马,因此需要進(jìn)行升級。使用RVM對Ruby進(jìn)行升級

一妻顶、安裝 RVM

RVM: Ruby Version Manager酸员,即Ruby版本管理器,包括Ruby的版本管理和Gem庫管理(gemset)

  1. 安裝 RVM
    安裝方法:文檔說明
curl -L get.rvm.io | bash -s stable

等待一段時間后就可以成功安裝好 RVM

安裝RVM 失敾渲觥:
通過瀏覽器打開該網(wǎng)址:https://get.rvm.io 幔嗦,將網(wǎng)頁中shell語句全部復(fù)制保存到本地文件命名為:vm_install.sh
執(zhí)行腳本:/Users/xxx/Desktop/rvm_install.sh 為.sh腳本文件路徑
chmod 777 /Users/xxx/Desktop/rvm_install.sh
sh /Users/xxx/Desktop/rvm_install.sh

  1. 設(shè)置本地路徑
source ~/.bashrc
source ~/.bash_profile
  1. 測試是否安裝正常
rvm -v
image.png

二、用RVM升級Ruby

  1. 查看當(dāng)前ruby版本
ruby -v

結(jié)果:ruby 2.3.7

  1. 列出已知的ruby版本
// 查找ruby版本
rvm list known  
// 或者去官網(wǎng)
[地址](https://www.ruby-lang.org/en/downloads/)
  1. 安裝ruby
// 重新安裝 ruby 環(huán)境(默認(rèn)安裝最新版本)
rvm reinstall ruby --disable-binary
// 安裝指定版本
rvm install +版本號沥潭,例如 rvm install 2.7.2
// 安裝完ruby邀泉,在安裝pod如果還報錯,可能需要
rvm reload
  1. 查看已安裝的最新版本
rvm list

5.設(shè)置默認(rèn)

rvm use 2.2.4@newgemset --create --default
或者:
rvm use 2.2.4 --create
rvm --default ruby-2.2.4
image.png

安裝完成之后ruby -v查看是否安裝成功

其它安裝指令:

  • 將2.2.4版本指令為新的并創(chuàng)建
    rvm use 2.2.4@newgemset --create --default
  • 重新安裝
    rvm reinstall ruby-2.2.4
  • 移除已安裝的軟件
    rvm remove ruby-2.2.4
  • 查看已安裝的最新版本
    rvm list
  • 查看當(dāng)前ruby版本
    ruby -v
  • 升級 rvm
    rvm get master
  • 再次安裝
    rvm install 2.4.1

三钝鸽、cocoapods的安裝

  1. 先升級Gem(可以省略)
sudo gem update --system
  1. 切換cocoapods的數(shù)據(jù)源
    先刪除
gem sources --remove https://rubygems.org/

再添加

gem sources -a https://gems.ruby-china.com/

再查看

gem source -l
  1. 安裝cocoapods
sudo gem install -n /usr/local/bin cocoapods

再加一句汇恤,完美解決

sudo xcode-select --switch /Applications/Xcode.app
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

安裝命令可能報錯:

// 新版系統(tǒng)報錯問題:
ERROR:  While executing gem ... (Gem::Exception)
    Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources

解決方法:

// 找到ruby源文件路徑:.rvm/src目錄下
1、cd ~/.rvm/src/ruby-3.0.0
2拔恰、./configure  --with-openssl-dir=/usr/local/ssl
3因谎、make
4、sudo make install

// 自動編譯颜懊,解決辦法如下:
brew install openssl
rvm reinstall ruby-3.0.1-version --with-openssl-dir=`brew --prefix openssl`

較新版本的OSX不推薦使用openSSL财岔,從而打破了許多依賴關(guān)系风皿。需要重新安裝ruby,但要確切指定openSSL庫的位置匠璧。如果您使用的是rvm桐款,則如下所示:
// 只需要設(shè)置此env變量,以便編譯器具有openssl庫的正確路徑(如果在macOS上使用Homebrew患朱,請嘗試brew info openssl來查看此信息)
brew info openssl
// 安裝的時候需要指定庫的位置
rvm reinstall 3.0.1 --with-openssl-dir=brew --prefix openssl

  1. 設(shè)置pod倉庫
    在終端中輸入如下命令來完成安裝(或者將 CocoaPods Specs repository復(fù)制到電腦上~/.cocoapods目錄下)
pod setup
或者:
git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git  ~/.cocoapods/repos/trunk
  • 有時候pod setup之后會直接顯示完成,我們可以直接cd到目錄~/.cocoapods/repos下面執(zhí)行命令
git clone https://github.com/CocoaPods/Specs.git master
或者:
git clone --depth=1  https://github.com/CocoaPods/Specs.git master
  1. 如果安裝失敗 ~/.cocoapods 里面是空的炊苫,就需要重新setup
pod repo remove master  
pod setup
  1. 如果有版本號裁厅,則說明已經(jīng)安裝成功
pod --version

四、Cocoapods使用

  1. 使用search命令搜索類庫名
    pod search AFNetworking
  2. 打開xcode,新建一個工程
  3. 進(jìn)入要安裝框架的項(xiàng)目的.xcodeproj同級文件夾侨艾,使用命令cd执虹,將新建的工程文件拉進(jìn)來(切換到項(xiàng)目文件路徑)
  4. 在該文件夾中新建一個文件Podfile
    pod init
    或者直接輸入命令創(chuàng)建Podfile文件
    touch Podfile
    在新建的文件中告訴cocoapods需要安裝的框架信息:
    該框架支持的平臺、適用的iOS版本唠梨、框架的名稱袋励、框架的版本
  5. 安裝命令
    pod install
    pod install —no-repo-update
    pod update --no-repo-update
  • 常見錯誤:
    [!] /usr/bin/git pull --ff-only
    原因: Cocoapods的分支不支持當(dāng)前最新的Xcode版本
    解決辦法: 刪除master分支,重新建立新的分支当叭,然后重新設(shè)置倉庫即可
    sudo rm -fr ~/.cocoapods/repos/master
    pod setup

五茬故、卸載Cocoapods

  1. 命令行運(yùn)行命令進(jìn)行卸載
    sudo gem uninstall cocoapods
    或者:
    sudo gem uninstall -n /usr/local/bin cocoapods
  2. 前往文件夾,可以找到整個文件刪除
    ~/.cocoapods

六蚁鳖、cocoapods降低版本

當(dāng)cocoapods版本跟第三方庫不兼容時磺芭,我們需要降低cocoapods的版本,才能運(yùn)行第三方庫(有的時候我們需要降低Cocoapods的版本來解決第三方庫的兼容問題
)
1. 查看cocoa pod的版本
pod --version
會看到cocoapods (1.3.1)
2. 移除pod組件
這條指令會告訴你Cocoapods組件裝在哪里 :
which pod
可以手動移除這個組件 :
sudo rm-rf</usr/local/bin/pod>
3. 移除 RubyGems 中的 Cocoapods程序包
Q: RubyGems是什么?
A: RubyGems(簡稱 gems)是一個用于對 Ruby組件進(jìn)行打包的 Ruby 打包系統(tǒng)醉箕。 它提供一個分發(fā) Ruby 程序和庫的標(biāo)準(zhǔn)格式钾腺,還提供一個管理程序包安裝的工具。

  • 查看gems中本地程序包

    gem list
    image.png
  • 發(fā)現(xiàn)Cocoapods的程序包


    image.png
  • 移除程序包
    在命令行輸入:
    sudo gem uninstall cocoapods -v 1.8.4
    輸出
    in addition to the gem? [Yn]
    輸入:
    Y
    輸出
    Successfully uninstalled cocoapods-1.8.4
    表示已經(jīng)成功移除cocoapods
    輸入:
    sudo gem uninstall cocoapods-core -v 1.8.4
    輸出
    Successfully uninstalled cocoapods-core-1.8.4
    表示成功移除 core

  • 再安裝cocoapods
    sudo gem install cocoapods -v 1.5.1

  • 升級指定版本
    sudo gem install -n /usr/local/bin cocoapods -v 1.11.3

  • 升級最新版本
    sudo gem install -n /usr/local/bin cocoapods --pre

  • 查看版本
    pod --version

七讥裤、升級gem

gem update

  • 有時候會碰到?jīng)]有讀寫權(quán)限問題放棒,報錯如下:
    You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory
    這時候在終端命令執(zhí)行:sudo gem install fus,然后輸入密碼就可以正常升級安裝

八己英、報錯問題

  • 1间螟、Pod使用報錯 CDN: trunk Repo update failed
    查看repo列表:
    pod repo list
    image.png

    移除trunk源:
    pod repo remove trunk
    在 Podfile 加上 https://github.com/CocoaPods/Specs.git
    image.png

其它命令

  • 清除緩存
    rm -fr ~/Library/Caches/CocoaPods
  • 升級
    gem update --system
    gem update
  • 清除
    gem cleanup
  • 用終端命令打開cocoapods文件夾
    open ~/.cocoapods
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市损肛,隨后出現(xiàn)的幾起案子寒亥,更是在濱河造成了極大的恐慌,老刑警劉巖荧关,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件溉奕,死亡現(xiàn)場離奇詭異,居然都是意外死亡忍啤,警方通過查閱死者的電腦和手機(jī)加勤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進(jìn)店門仙辟,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鳄梅,你說我怎么就攤上這事叠国。” “怎么了戴尸?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵粟焊,是天一觀的道長。 經(jīng)常有香客問我孙蒙,道長项棠,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任挎峦,我火速辦了婚禮香追,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘坦胶。我一直安慰自己透典,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布顿苇。 她就那樣靜靜地躺著峭咒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪纪岁。 梳的紋絲不亂的頭發(fā)上讹语,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天,我揣著相機(jī)與錄音蜂科,去河邊找鬼顽决。 笑死,一個胖子當(dāng)著我的面吹牛导匣,可吹牛的內(nèi)容都是我干的才菠。 我是一名探鬼主播,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼贡定,長吁一口氣:“原來是場噩夢啊……” “哼赋访!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起缓待,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤蚓耽,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后旋炒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體步悠,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年瘫镇,在試婚紗的時候發(fā)現(xiàn)自己被綠了鼎兽。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片答姥。...
    茶點(diǎn)故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖谚咬,靈堂內(nèi)的尸體忽然破棺而出鹦付,到底是詐尸還是另有隱情,我是刑警寧澤择卦,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布敲长,位于F島的核電站,受9級特大地震影響秉继,放射性物質(zhì)發(fā)生泄漏祈噪。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一秕噪、第九天 我趴在偏房一處隱蔽的房頂上張望钳降。 院中可真熱鬧厚宰,春花似錦腌巾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至撵幽,卻和暖如春灯荧,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背盐杂。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工逗载, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人链烈。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓厉斟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親强衡。 傳聞我的和親對象是個殘疾皇子擦秽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 最近在使用cocoapods時越败,因?yàn)闆]有很系統(tǒng)的了解触幼,導(dǎo)致要頻繁的去網(wǎng)上查閱各種資料,結(jié)果很多資料都已經(jīng)過時究飞,或是...
    春風(fēng)十里湘閱讀 371評論 0 0
  • cocoapods安裝過3次都蜜汁失敗 在第七次終于成功 下列附上過程 有耐心的朋友可以試試的我的步驟和方法 ps...
    _Dam0n閱讀 2,426評論 0 1
  • 一域蜗、CocoaPods安裝步驟1巨双、查看當(dāng)前源$ gem sources -l如果輸出下面的 Ruby 默認(rèn)源需要移...
    90后的晨仔閱讀 5,843評論 0 3
  • 目錄CocoaPods安裝過程CocoaPods的使用刪除cocoapods已導(dǎo)入項(xiàng)目的第三方庫和移除項(xiàng)目中的co...
    72行代碼閱讀 569評論 0 0
  • 三原則:圖原創(chuàng),文原創(chuàng)霉祸,詩原創(chuàng)筑累。 一般而言 在這樣的窗外 應(yīng)該有一位長發(fā)飄飄的女孩 撐著一把油紙傘 在雨中走來 然...
    秋水飲馬閱讀 446評論 17 24