【CocoaPods】can’t find gem cocoapods (>= 0.a) with executable pod を解消する方法

マジで急に使えなくなりました。
ピンポイントのエラー解消法はいろんな記事に載っているのですが、綺麗に直ったものが意外となかったので、同じ現象が起きた人用にまとめたいと思います。

開発環境(前提条件)

・Xcode14.0
・Swift5
・CocoaPods

エラー内容

Pods にアップデートあるかなーと思ってドキワクで pod update を試したところ、急に以下のようなエラーを吐かれてしまいました。

1週間前まで使えてたのに…と思い、試しに pod install を行ったところ、同じエラー内容が発生。
ビビり散らかしてテキトーにバージョンを確認したところ…

うひょー (ノ^o^)ノ
同じエラーだし、なぜか pod が使えんくなってます。
身に覚えがないし怖くなったんで、無いんならインストールすりゃええんじゃ!と思い、
sudo gem install cocoapods を行ってやったところ

詰む詰む。└( ^ω^ )」

修正方法

エラー内容には You don’t have write permissions for the xxxxx と書かれているので、「あなたには xxxxx へのアクセス権ないよ」言われてます。
先週はいつも通りアップデートできていたので、いつ剥奪されたんや…って感じです。笑
そこ追求するほど探究心ないので、僕は修正できる方法を載せますが、有識者や経験者の方いたらぜひ教えてください。

一度アンインストールをする

最初は gem をアンインストールしていなかったのですが、僕は当記事のエラーを解決するために時間を要したので、一度スッキリさせようと思って以下のコマンドを実行しました。

このあとに同じ手順を行うと解決できたので、ネットをぐるぐる巡っている人は試してみるのもいいと思います。
もちろん自己責任で。

rbenv をインストール

インストールできるバージョンを調べて、使いたいバージョンを指定してインストールします。

僕は執筆時の最新バージョンである 3.1.2 使います。
以下のコマンドを順に入力してください。

どういう処理か調べながら作業を行なっていますが、2行目の rbenv global は、システム全体で使用する Ruby のバージョンを指定するためのコマンドで、最後の rbenv rehash は、こちらの記事によると「明示的に記載しなくても gem install のタイミングで行われる」とのこと。
先ほども言いましたが、僕は当記事のエラーを解決するために時間を要したので、念の為に手動でも行いました。

パスを通す

パスを通して、設定されたか確認します。

パスの @@@@@ はユーザー名が表記されています。

最終確認

シェルを再起動後に ruby と gem のパスを確認し、以下のように表示されていたら OK です。

これで gem install cocoapods を行うことで、CocoaPods がインストールできるようになってるはずです。

さいごに

解決するまでに半日以上は使いました。笑
つーかアクセス権はいつの間に剥奪されたんじゃ…

コメント