1. 程式人生 > >ERROR: While executing gem ... (Errno::EPERM)

ERROR: While executing gem ... (Errno::EPERM)

OS X 10.11 安裝Cocoapods 出現問題的解決方法
今天嘗試用 Cocoapods安裝個第三方庫.. 輸入pod install, 發現 command not find。 WTF!

估計是升級10.11後Cocoapods被幹掉了。

我輸入 sudo gem install cocoa pods 之後,出現如下問題:

ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted - /usr/bin/xcodeproj

我估計是gem版本沒有更新。執行sudo gem update –system,又出現了錯誤

ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted - /usr/bin/update_rubygems

因為知道gem版本過老的話也是不能成功下載cocoapods的,但是我現在又不能用sudo gem update –system來更新。後來我就直接去rubygems官網下載了最新的原始碼進行了安裝。現在執行gem -v顯示版本是2.4.8。
可以看我另外一篇文章,手動安裝gem

可是問題又來了,這個時候去執行sudo gem install cocoapods,還是會出現上邊的錯誤。
所以執行下邊:

自定義GEM_HOME
$ mkdir -p $HOME/Software/ruby
$ export GEM_HOME=$HOME/Software/ruby
$ gem install cocoapods
[...]
1 gem installed
$ export PATH=$PATH:$HOME/Software/ruby/bin
$ pod --version
0.38.2

GEM_PATH與GEM_HOME 的區別:

1.GEM_PATH provides the locations (there may be several) where gems can be found.
2.GEM_HOME is where gems will be installed (by default).(Therefore GEM_PATH should include GEM_HOME).

但是之後我pod install的時候又花式出錯

[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master`.
You can try adding it manually in `~/.cocoapods/repos` or via `pod repo add`.

我嘗試按提示的方法

pod repo add master https://github.com/CocoaPods/Specs.git

然而還是有錯..

[!] /usr/bin/git clone http://git.oschina.net/akuandev/Specs.git master

xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun

最後的解決方法:

sudo xcode-select -switch /Applications/Xcode-beta.app/Contents/Developers

後面的地址你可以開啟Xcode顯示包內容,找到那個資料夾拖到終端裡面比較不容易錯。

最後終於修成正果..

至於一開始輸入 sudo gem install cocoapods 沒反應需要修改為淘寶映象的問題,請百度Cocoapods參閱其它文章..

補充

這個怎麼每次都得重新設定啊。真操蛋!有找到好的方法的,告訴一下。謝謝!