8
5

More than 1 year has passed since last update.

【Mac】rbenv を導入して Ruby のインストールとバージョン管理を簡単にする

Last updated at Posted at 2023-03-18

概要

以下についての簡単な備忘録

  • Ruby をインストールする
    • ただし、バージョンの切り替えを簡単に行えるようにバージョン管理ツールを利用する
  • Ruby の言語バージョン管理には「rbenv」を採用する
    • rvm は使用しない
  • 「rbenv」単体だけでは Ruby のインストールはできないため「ruby-build」もあわせて導入する

前提

macOS を利用しているので、Homebrew でインストールする前提です。
事前に Homebrew をインストールしておいてください(方法はこちら)。
Windows の方は、都度、読み替えてください。

手順

現在の Ruby バージョンを事前確認

# バージョン確認
ruby -v

# 結果:既に入っていれば、バージョンが表示される
ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.x86_64-darwin22]

rbenv インストール

「rbenv」本体は切り替え機能しかなく、Ruby をインストールすることはできないため、Ruby をインストール可能な「ruby-build」も一緒に導入します。

brew install rbenv ruby-build

確認

# バージョン確認コマンドで結果が返ってくれば OK
rbenv -v

設定ファイルに追記

.zshrc がまだない場合は、ホームディレクトリ直下に作成してください(.zshrc がわからない方向けの記事はこちら)。

これをやらないと、rbenv で Ruby をインストール・設定してもバージョンが反映されないので注意。
以下のコマンドで設定ファイルに追記する。

# 以下の2つを実行して、設定ファイルに追記
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc 
echo 'eval "$(rbenv init - zsh)"' >> ~/.zshrc

設定ファイルを反映させる

source ~/.zshrc

確認(/Users/ユーザ名/.rbenv/binRBENV_SHELL が追加されている)

# 環境変数 確認コマンド
printenv

# 結果表示HOME=/Users/ユーザ名
PATH=/Users/ユーザ名/.rbenv/shims:/Users/ユーザ名/.rbenv/bin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin
RBENV_SHELL=zsh
:

Ruby をインストール

# インストールできるバージョンを一覧表示
rbenv install --list

# 一覧の中から、バージョンを指定してインストール(例:v3.1.3)
rbenv install 3.1.3

確認

# インストールしたバージョンを一覧表示
rbenv versions

# 結果(使用中のバージョンに * 印がつく)
* system # 元々入っているものは "system" と表示される
  3.1.3

Ruby のバージョンを切り替える

バージョンを選択

# 一覧の中から設定してバージョンを切り替える
rbenv global 3.1.3

確認

# バージョン確認
ruby -v

# 結果
ruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [x86_64-darwin22]

無事、インストールとバージョン切り替え完了!

おまけ

rbenv をインストールして、Ruby を設定しても ruby -v で反映されず切り替わらない場合がありますが、多くの場合はシェルの設定ファイルへの追記と反映ができていない可能性があります。
.zshrc(または、.bash_profile)への設定部分は忘れずに行いましょう。

which コマンドで Ruby がどこを参照しているのか確認するのが良いかもしれません。

# Ruby コマンドがどこを参照しているか確認
which ruby

# 結果①:元々入っている ruby など、別の場所を参照している場合(rbenv で切り替わらない)
/usr/bin/ruby
# 結果②:正しく参照されている場合(rbenv で切り替えることができる状態)
/Users/ユーザ名/.rbenv/shims/ruby

また、各プロジェクト内で .ruby-version などでローカルバージョンを指定している場合は、global よりローカルを優先します。意図していない場合はご注意ください。

8
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
5