Macに直接Rubyをインストールすると,プロジェクトごとにRubyのバージョンを変更することが難しくなります.このような問題はrbenvによって解決されます.また,様々なxxenvをまとめて管理するanyenv経由でrbenvをインストールする手順を紹介します.
目次
anyenvのインストール
本記事の以降のステップではanyenvがインストールされていることを前提としています.Macへのanyenvのインストールは以下の記事を参考にしてください.
あわせて読みたい


Mac anyenvでxxenv系をまとめる
【anyenvのインストール】 anyenvにはhome brewによる方法とgit cloneによる方法の2種類があります. homebrewによるインストール $ brew install anyenv $ anyenv init...
rbenvのインストール
$ anyenv install rbenv
$ exec $SHELL -lrbenvでインストール可能なrubyのバージョンを確認します.
$ rbenv install --list
2.6.10
2.7.6
3.0.4
3.1.2
jruby-9.3.4.0
mruby-3.0.0
rbx-5.0
truffleruby-22.1.0
truffleruby+graalvm-22.1.0最新版の3.1.2をインストールします.
$ rbenv install 3.1.2インストール済のrubyのバージョンを確認します.
% rbenv versions
* system
3.1.2 (set by /Users/[username]/.anyenv/envs/rbenv/version)globalを3.1.2に変更します.
$ rbenv global 3.1.2ログインシェルを再起動します.
$ exec $SHELL -lglobalのRubyのバージョンを確認します.
% rbenv versions
system
* 3.1.2 (set by /Users/[username]/.anyenv/envs/rbenv/version)rbenvを使う際の注意事項
gemをインストールする際に,rbenv execを指定する必要があるという記事を見かけます.rbenv execはrbenvのrubyやgem のパスを使用することを明示的に示すためのものです.
rbenv exec gem install bundlerrbenv execを書く必要がるかは環境によります.which gemでgemのパスを確認します.以下のようにgemがrbenv配下のパスになっていれば,rbenv execを指定する必要はありません.
% which gem
/Users/[username]/.anyenv/envs/rbenv/shims/gemrubyのバージョンをruby local xx等で変更後,exec $SHELL -lをすれば,.zshrcに記載したanyenv initが実行されるので,rubyは切り替えた後のバージョンに変わっているはずです.そのため,gemを実行した場合,現在設定しているバージョンのrubyのものを呼び出してくれます.
