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も問題なく通りました〜