Cocoa Podsのバージョンを上げる

2020.10.13
Cocoa Podsのバージョンを上げる

久しぶりにSwiftを触るにあたり「そうだ、Cocoa Podsのバージョンを上げよう!」と思ってつまづいたので備考欄を兼ねて残します。

検証した環境

1 Mac OS 10.15.6 macOS Catalina
2 Cocoa Pods 1.8.4 更新前
3 gem 3.0.6

Cocoa Podsのバージョンを上げる

Cocoa Podsを上げるのは $ gem update cocoapods ですが、権限周りで怒られました。

Cocoa Podsのインストール環境

渡しがSwiftの開発を始めたSwift1,2の頃は「Homebrew」でCocoa Podsをインストールしていましたが、公式で gem を使った方法が書かれていたため、 途中で gem を使ったインストール方法に変えました。

# インストール時のコマンド
$ sudo gem install cocoapods


インストール先の確認

$ which pod
/usr/local/bin/pod

パーミッション周りの対応

結論としては $ sudo gem update -n /usr/local/bin cocoapods で出来ました


-n というオプションは「実行可能ファイルがあるディレクトリ位置」を指定するオプションなんですね。
なぜそれでエラーが起きなくなるかは分からないですが 😅

$ gem update --help
・・・
-n, --bindir DIR                 Directory where executables are located



まず、素の状態で実行

$ gem update cocoapods
Updating installed gems
Updating cocoapods
・・・
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.


sudo 付けて実行

$ sudo gem update cocoapods
Password:
Updating installed gems
Updating cocoapods
・・・
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /usr/bin directory.

別の場所でパーミッションエラー。


以下の記事参考 -n 付けたら、
RubyのGem::FilePermissionErrorを解決する - Qiita

$ sudo gem update -n /usr/local/bin cocoapods
Password:
Updating installed gems
Updating cocoapods
・・・
Done installing documentation for cocoapods after 1 seconds
Gems updated: cocoapods

できた!



更新が出来た事の確認

$ pod --version
1.9.3


余談

調べていると Macが Catalinaになってからはインストール時も含め -n /usr/local/bin を指定する必要があるみたいですね。
【Swift】CocoaPods導入手順 - Qiita