ロゴテキスト ロゴ

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

    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

    プロフィールの背景画像 プロフィール画像
    Yuki Takara
    都内でフリーランスのエンジニアをやってます。フロントとアプリ開発メインに幅広くやってます。