Macでcocoapodsインストールしたのにないって言われる。根深いzsh問題の原因と解決方法

Macでflutter開発しようと思い、flutter doctor実行したら以下エラーが。

んん?

前回インストールしたのにどういうこと?

原因は根深いmacのzsh化

いろいろ調査していくと、わかった。

Rubyのバージョンを切り替えたのに戻っちゃってる。

ruby -v
ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.x86_64-darwin21]

どうやらMacに最初からインストールされているruby2.6.8に戻ってるようだ。

んじゃ戻すか、とコマンド実行。

rbenv rehash
rbenv global 3.1.2
ruby -v
↓結果
ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.x86_64-darwin21]

き、切り替わらない・・・

そもそも前回bash_profileに書いたよな〜と思い確認。

うん、ちゃんと書いてある。

で、調べていくと・・・

Macのログイン時に起動するログインshellがbashではなくzsh変わったため、ってことらしい。

なのでbash_profileが読まれず、zshで指定されているruby 2.6.8が読み込まれてるそう。

MacOS Catalilaからなぜかbashからzshに変わったそうですよ。

このためCatalina以前のmacでの解決方法を参考にすると私のようなハメに陥ります(涙)

本当にそうなのか確認してみると・・・

echo $SHELL
↓結果
/bin/zsh

ほ、本当だ。bashじゃなくzshが読まれてる(汗)

解決方法

ちまたではbashに強制的に切り替えてる人もいるようですが、さすがに怖い。

今後のMacOSのアップデートに影響ありそうだし。

ってことで、zshにbash_profileに書いたパスを通すコマンドを書けばOKなはず。

Zshで読み込まれているのは.zshrなので以下コマンドでファイルをOPEN。

open ~/.zshrc

Macのメモ帳で開かれるので、ここにbash_profileに書いたパスを追記すればOK。

export PATH="$HOME/.rbenv/bin:$PATH"
if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi

ターミナルを一旦終了し、再度実行して読み込まれているかチェック。

ruby -v
↓結果
ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-darwin21]

OK!

これでちゃんとrbenvで指定したrubyが読み込まれます♪

flutter doctorも問題なく通りました〜

コメントを残す

メールアドレスが公開されることはありません。