$ which podhtml
/Users/galahad/.rvm/gems/ruby-2.2.2/bin/pod sublime-text
/usr/local/bin/podapi
Q: RubyGems是什麼?緩存
A: RubyGems(簡稱 gems)是一個用於對 Ruby組件進行打包的系統。 它提供一個分發 Ruby 程序和庫的標準格式,還提供一個管理程序包安裝的工具。ruby
發現Cocoapods的程序包bash
cocoapods (1.1.1)app
cocoapods-core (1.1.1)curl
cocoapods-deintegrate (1.0.1)工具
cocoapods-downloader (1.1.2)測試
cocoapods-plugins (1.0.0)
cocoapods-search (1.0.0)
cocoapods-stats (1.0.0)
cocoapods-trunk (1.1.1)
cocoapods-try (1.1.0)
3、ruby版本是否合適?乾脆重裝
使用RVM也就是Ruby Version Manager,Ruby版本管理器來升級ruby,RVM包含了Ruby的版本管理和Gem庫管理(gemset)。
RVM安裝
一、RVM安裝
$ curl -L get.rvm.io | bash -s stable
二、以後就是等待一段時間以後,就能夠安裝成功了,使用如下命令來驗證
$ source ~/.bashrc
$ source ~/.bash_profile
三、測試是否安裝正常
$ rvm -v
出現rvm 1.27.0 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]就算成功了。
使用RVM升級Ruby
一、查看當前ruby版本
$ ruby -v
這一步會顯示出來當前ruby的版本
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15]
二、列出已知ruby的版本
$ rvm list known
個人電腦上面會出現下面這些信息:
Warning, new version of rvm available '1.28.0', you are using older version '1.27.0'.
You can disable this warning with: echo rvm_autoupdate_flag=0 >> ~/.rvmrc
You can enable auto-update with: echo rvm_autoupdate_flag=2 >> ~/.rvmrc
.......
我麼先按照提示進行升級。
[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[.6]
[ruby-]2.3[.3]
[ruby-]2.4[.0-rc1]
ruby-head
其中Ruby 2.4.0 rc1 表示 2.4 首個候選版
咱們能夠安裝2.3.3版本
三、安裝ruby 2.3.3
$ rvm install 2.3.3
若是安裝以下所示的話,表示已經安裝過
$ rvm install 2.3.3
Already installed ruby-2.3.3.
To reinstall use:
rvm reinstall ruby-2.3.3
若是想從新安裝的話:rvm reinstall ruby-2.3.3
正常狀況下面:
Checking requirements for osx.
Updating Homebrew...
Certificates in '/usr/local/etc/openssl/cert.pem' are already up to date.
Requirements installation successful.
之前安裝的過程當中遇到的問題以及解決方法:
一、homeBrew版本太低
解決方法:sudo chown -R $(whoami):admin /usr/local
輸入密碼後從新執行brew update
,最後提示Already up-to-date
的時候,brew自己就更新好了(這個過程比較久).
接着用brew outdated
命令查看brew下哪些軟件能夠進行升級.
而後brew upgrade
命令用來升級因此能夠升級的軟件.
最後記得用brew cleanup
來清理不須要的版本及其安裝包緩存.
截止目前,brew也被咱們更新好了.
二、注意事項:安裝CocoaPots的順序:
Libraries missing for ruby-2.3.3: /Users/travis/.rvm/rubies/ruby-2.3.3/lib/libruby.2.3.0.dylib,/usr/local/opt/gdbm/lib/libgdbm.4.dylib. Refer to your system manual for installing libraries
四、我在安裝ruby-2.3.3的時候發現還有一個錯誤
Error running '__rvm_patch -F 25 -p1 -N -f -i /Users/galahad/.rvm/patches/ruby/2.3.3/openssl3.patch',
showing last 15 lines of /Users/galahad/.rvm/log/1484210020_ruby-2.3.3/patch.apply.openssl3.log
Error running '__rvm_make -j 1',
showing last 15 lines of /Users/galahad/.rvm/log/1484210020_ruby-2.3.3/make.log
dyld: lazy symbol binding failed: Symbol not found: _clock_gettime
Referenced from: /Users/galahad/.rvm/src/ruby-2.3.3/./miniruby (which was built for Mac OS X 10.12)
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: _clock_gettime
Referenced from: /Users/galahad/.rvm/src/ruby-2.3.3/./miniruby (which was built for Mac OS X 10.12)
Expected in: /usr/lib/libSystem.B.dylib
make: *** [.rbconfig.time] Trace/BPT trap: 5
++ return 2
There has been an error while running make. Halting the installation.
安裝2.3.3版本的時候,老是報這個錯誤,才意識到本身的電腦系統仍是10.11.6。更新mac系統到最新版本便可。
五、安裝2.3.3成功後,路徑不對
$ pod install
/Library/Ruby/Site/2.0.0/rubygems.rb:270:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) (Gem::GemNotFoundException)
from /Library/Ruby/Site/2.0.0/rubygems.rb:298:in `activate_bin_path'
from /usr/local/bin/pod:22:in `<main>'
問題再現描述:關閉終端,再進來就恢復原來的版本了,解決方式對應下面的「ruby安裝成功後,路徑適配」
問題再現描述:關閉終端,再從新啓動就出現上面的問題,解決方式:解決路徑的適配問題的同時參考上面「移除 RubyGems 中的 Cocoapods程序包」進行解決。
ruby安裝成功後,路徑適配
須要執行命令:
$ rvm use system
設置回系統默認版本:
$ rvm 2.3.3--default
設置某個版本爲默認(前提是這個版本已經安裝,若是沒有安裝的話:rvm install ruby-2.3.3-default 便可)
$ ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin16]
gem install cocoapods --pre (最新版本,若是最新版不穩定的話,建議不要執行,由於獲得的也包括測試版)
也能夠指定安裝版本:
$ sudo gem install cocoapods -v 1.1.1
$ sudo gem install -n /usr/local/bin cocoapods
也能夠參考參考:http://www.cnblogs.com/richard-youth/p/4508049.html