Featured image of post Macにrbenvを入れてRubyの複数バージョンを使い分け

Macにrbenvを入れてRubyの複数バージョンを使い分け

MacにHomebrewでrbenvとruby-buildを入れてRubyの複数バージョンを使い分ける方法。インストール可能なバージョンの確認、インストール、バージョンの切り替え、切り替わらないときの環境変数の設定まで♪

1103文字

Rubyのバージョン管理をしたい

Macには標準でRubyがインストールされていて、すぐに使うことが可能となっています。

しかし、案件によってRubyのバージョンを切り替える必要が出てきたり、迂闊にRubyのバージョンアップが出来ないケースもありえます。

rbenv

そんな時にはrbenvをインストールしましょう。

以前、紹介したgoenvと同じような役割で、簡単にRuby本体のバージョン管理が可能になります。

関連記事 【mac】Go言語の複数バージョンを管理する「goenv」のインストール方法【Homebrew】 2018/01/18 1232文字 約3分で読めます IT Go Mac パソコン プログラミング

では、早速Homebrewでの導入方法をご紹介したいと思います。

手順

インストール

まずは以下のコマンドを実行してください。

コマンド
brew install rbenv ruby-build


ここではrbenv本体と、rbenvのプラグインのruby-buildをインストールしました。

確認

以下のコマンドを実行して確認してみましょう。。

コマンド
rbenv --version
ruby-build --version


どちらも正常にインストールされています。

バージョン切り替え

では、実際にバージョンを切り替えてみましょう。
今回は2.4.3に変更してみます

まずは、以下のコマンドで、2.4.3がインストール可能かチェックしてみましょう。

コマンド
rbenv install --list  | grep 2.4.3


インストール出来そうですね。
※インストール出来ないバージョンの場合は何も表示されません

では、以下のコマンドで対象バージョンのRubyをインストールします。

コマンド
rbenv install 2.4.3


インストールは出来たので、次に以下のコマンドで実際にバージョンを切り替えてみます

コマンド
rbenv global 2.4.3

あれ?変わらない・・・

これで変わったと思い、以下のコマンドで確認すると、

コマンド
ruby -v

残念ながら変わっていません。orz

原因は環境変数

以下のコマンドどこのrubyが使用されているか確認してみます。

コマンド
which ruby


これだとMacのデフォルトのrubyを見てしまっているので、ここの向き先が~/.rbenv/shims/rubyになるように変える必要があります。

シェルのprofile以下の記述を追加します。今回はzshを使っているので~/.zprofileに追記します。
※お使いのシェルによって編集するファイルは異なるので置き換えて作業を進めてください

~/.zprofile
export PATH="${HOME}/.rbenv/shims:/usr/local/bin:$PATH"
eval "$(rbenv init -)"

編集をしたら以下のコマンドで反映して再度確認してみましょう。

コマンド
source ~/.zprofile
ruby -v


正常に反映されましたね。

あとがき

Rubyに限らずGoNode.jsPHPなどは言語のバージョンによって差異が出るので、このようなバージョン管理の概念は必ず必要となります。

環境構築の際は、忘れずに考慮するように注意しましょう。