rbenv 導入メモ

これは macOS での rbenv 導入に関するメモである。

rbenv / https://github.com/rbenv/rbenv

rbenv 導入前の問題

fastlane など Ruby に関係したツールを macOS にインストールする場合、以下の問題が起きる

  • macOS にプリインストールされている Ruby バージョンが古い
  • しかし OS 全体の Ruby のバージョンは変更させたくない
  • もしくはツール活用のため、複数バージョンの Ruby を共存させたい

この問題に対処するため rbenv を導入する

rbenv でできること

rbenv でできること、メリット

  • 複数のバージョンの Ruby を環境内にもつことができる
  • 使用したい Ruby のバージョンを必要に応じて切り替えすることができる

rbenv 導入

rbenv インストール

$ brew install rbenv ruby-build

brew 経由でインストールする

$ rbenv init
# Load rbenv automatically by appending
# the following to ~/.bash_profile:

eval "$(rbenv init -)"

init でセットアップをする。
コマンドの結果、コメントで指示されたとおりに ~/.bash_profile に必要な記述を追加する。

$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

このコマンドの後に Terminal に変更を反映させるために Terminal アプリを一度終了させ、再度起動させる。

インストールできる Ruby バージョンの一覧を確認する

$ rbenv install --list
Available versions:
  1.8.5-p52
  1.8.5-p113
  1.8.5-p114
  (中略)
  2.6.3
  2.6.4
  2.6.5

このような感じで rbenv でインストールできる Ruby のバージョン一覧が確認できる。

特定バージョンの Ruby をインストールする

$ rbenv install 2.6.5

2.6.5 をインストールする場合はこれ

管理している Ruby バージョン一覧を確認する

$ rbenv versions
* system (set by /Users/<ユーザ名>/.rbenv/version)
  2.6.5

system(最初から入っているバージョン)、2.6.5(前段でインストールしたバージョン)が管理されていることが確認できる

有効な Ruby バージョンを切り替える

$ rbenv global 2.6.5

rbenv global でシステムで使用する Ruby のバージョンを設定できる(またほかに local によるプロジェクトごとの Ruby バージョンの指定も可能だ)

$ ruby --version
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-darwin18]

問題なくシステムの Ruby バージョンが変わったか確認する。この例では 2.6.5 に変わっているので OK。

OS 標準の Ruby バージョンに戻す

$ rbenv global system

system をバージョン指定することにより標準の Ruby バージョンに戻せる。

$ ruby --version
ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]

きちんと標準のバージョンに戻ったことが確認できた(本環境では 2.3.7 がもともと macOS にインストールされていたバージョン)