Ruby を使うなら「rbenv」で複数バージョンを切り替えられるようにしておこう

このエントリーをはてなブックマークに追加

デザイナーやフロントエンド側でも Sass&Compass や jekyll などを使うために、Rubyを利用する機会が多くなってきています。

Mac であれば最初から入っているものを利用するのでもいいのですが、バージョンが古かったりして使いたい機能が使えないなんてこともあったりします。

また、Ruby自体にもバージョンがあるため、案件ごとによって使うバージョンが違うという状況にもなったりします。特にフリーランスで制作をしている私は、様々な会社とやりとりするため、それぞれの担当者と同じバージョンに合わせておくという環境の設定が必要な場合もあったりします。

そんなときに簡単に Ruby のバージョンを簡単に切り替えられるのが、rbenv です。

GitHub : sstephenson/rbenv

rbenvとは?

Ruby を自分のPCで利用するために、Macであれば Homebrew でインストールしたりアップデートすることもできますが、一つのバージョンしか入れることができず、切り替えも一苦労です。

その面倒な切り替えを楽にしてくれるようにするのが、 rbenv です。

rbenv のインストール

早速導入してみましょう。

rbenv のインストール方法はMacであれば2つあります。

ひとつは Homebrew を使い入れる方法です。

Homebrew でインストール

$ brew update
$ brew install readline ruby-build rbenv

一度 $ brew update をしてから入れたほうがいいようです。

もし Mac に Homebrew を入れていなければ、下記ページの下のほうに書いてあるインストールを参照してください。

Homebrew

もう一つは Github から取ってくる方法です。

Github からチェックアウト

$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

git で ファイルを ~/.rbenv ディレクトリに clone します。

Homebrew でのインストールも、 Githubでのインストールも、まだ完了ではありません。プロファイルに必要なコードをかいて、パスを通します。

パスの設定

export PATH=$HOME/.rbenv/bin:$PATH
eval "$(rbenv init -)"

上記の内容を ~/.zshrc もしくは ~/.bash_profile の使っている方にに入れてください。入れ終わったら $ source ~/.zshrc などでパスを有効化しましょう。

使えるようになっているかどうかは、 $ rbenv --version を入力して、バージョン情報が返ってくれば確認ができます。

ruby-build のインストール

git で clone して導入した場合、必要なバージョンをインストールする際に、ビルドエラーがおこりインストールが進まない状態になってしまいます。

そのため、 ruby-build もセットでインストールするようにしましょう。

GitHub : sstephenson/ruby-build

Github からチェックアウト

$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

rbenv を使ってみる

まずはインストール可能な Ruby のバージョンを確認してみましょう。

rbenv でインストール可能なバージョン一覧

$ rbenv install -l

1.9.3-p327
1.9.3-p362
1.9.3-p374
1.9.3-p385
1.9.3-p392
1.9.3-p429
1.9.3-p448
1.9.3-p484

のようにずらずら出てくる。インストールしたいバージョンを確認したら、そのバージョンをインストールします。

なお、インストールしたいバージョンがリストに出てこない場合もあるようです。特に brew で入れいた場合、p448 や p484 などの最新のものが出てこない場合があるようです。僕の環境でも出てきませんでした。

そんなときは一度 rbenv をアンインストールして入れなおすこで直るようです。

インストールしたいバージョンが出てこない場合

$ brew uninstall rbenv

必要バージョンのインストール

バージョン確認後のインストールを行います。

Rubyのインストール

$ rbenv install 1.9.3-p484

インストールは時間がかかりますが、終わるまで待ちます。

インストールされたか確認

インストール済の一覧は、versions で確認ができます。

$ rbenv versions
* system (set by /Users/username/.rbenv/version)
1.9.3-p484

インストールしただけでは、使いたいバージョンに変更されていないため、インストールしたバージョンを使うように切り替えます。

$ rbenv global 1.9.3-p484

global で指定するとPC内全体でrubyを使う場合は指定したバージョンを使うように切り替わります。

globalではなく、今いる位置のローカル限定の場合は、 local で指定します。

指定したバージョンに切り替わったか確認

Rubyのバージョンが切り替わったか、 Ruby のコマンドを叩いて確認しましょう。

$ ruby --version

指定したバージョンが表示されればOKです。

もしもうまく切り替わっていない時は、 $ rbenv rehash をたたいてみてください。

※追記(2014/06/20 8:00)

git で clone をして導入した場合、ruby-build がないとエラーになってインストールが進まないため、 ruby-build のインストール方法追記しました。