はじめに
今回、担当しているプロジェクトで初めてiOSの開発をすることになりました。
その際、CocoaPods関連でいろいろ時間をとられたので、メモを残しておきます。
ライブラリのインストール
Podfileがあるディレクトリに移動して下記コマンド実行
$ pod install
そしたら下記エラーで怒られる
Setting up CocoaPods master repo
[!] The `master` repo requires CocoaPods 0.32.1 -
Update CocoaPods, or checkout the appropriate tag in the repo.
cocoapodsのバージョンが0.32.1より低いよと。
一旦バージョン確認してみる。
$ pod --version
バージョンが0.29.0だったのでとりあえずバージョンをあげようかと。
CocoaPodsのバージョンをあげてみる
下記コマンドでバージョンをあげてみる
$ sudo gem update cocoapods
そしたら、今度はrubyのバージョンが低いって怒られる。
cocoapods-core requires Ruby version >= 2.0.0.
まあ、今までフロントしかやってなかったので、Rubyのバージョンなんて全く気にしてなかったしと思いながらも、一応Rubyのバージョンを確認。
$ ruby -v
そしたら1.8.7だった。
Rubyのバージョンをあげてみる
なんかググったら複数バージョンのRubyを切り替えることができる「rbenv」が便利とのことなので、インストールしてみる。
Homebrewでインストールする前に、念のためにbrew update
しておく。
その後に下記を実行。
$ brew install readline ruby-build rbenv
rbenvでインストール確認なバージョン一覧を表示してみる。
$ rbenv install -l
2.0.0より上であればいいので、2.0.0-p247をインストールする。
$ rbenv local 2.0.0-p247
インストール後にバージョン変更する。
$ rbenv local 2.0.0-p247
が、なぜか切り替わらない。
.bash_profileにパス等の設定を追記する。
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
その後、設定をリロードする。
$ source ~/.bash_profile
これでバージョン変更は完了。
再度CocoaPodsのバージョンをあげてみる
再度sudo gem update cocoapods
を叩く。
今度はエラーが出なかった。
念のためpod --version
でバージョン確認
なぜか0.29.0のまま・・
いろいろググったところ、どうやらOS製のrubyを起動してるらしい。
/usr/bin/podの中身を見てみたらOS製のrubyを起動してた。
#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
パスをhomebrewのrubyから起動するように修正する。
#!/usr/bin/ruby
これでCocoaPodsのバージョンが最新版になってたので、pod install
で無事インストールすることができました。