rbenvで複数バージョンのRubyを管理するmac os lion

開発マシンに複数のRubyを入れて管理するにはRVMが有名だったけど37signalsのsstephensonという人が作ったrbenvというのが最近人気になってるらしいのでMac OS Lionにインストールしてみました。

GitHub - rbenv/rbenv: Groom your app’s Ruby environment

インストール

Homebrewがインストールされていれば簡単にインストールできます。
下記コマンドを実行します。

$ brew install rbenv
$ brew install ruby-build

~/.bach_profile に以下を追加します。

eval "$(rbenv init -)"
gccのインストール

これで準備OK、早速Rubyをインストールしようとすると、エラーになります。Mac OS X Lion以降、XCodeに入っているgccllvm gccというのに変わったらしく、これだとうまく行かないようなので、別途gcc入れる必要があります。

ここから
h[ttps://github.com/kennethreitz/osx-gcc-installer:title]
Pre-Build binaryをダウンロードします。

OS X 10.7 Lion: GCC-10.7.pkg

インストーラになってるので実行します。790MBほど必要だと言われます。

Rubyのインストール
$ rbenv install

で利用可能なバージョン一覧が表示されるので、使いたいものをインストールします。

Available versions:
1.8.6-p383
1.8.6-p420
1.8.7-p249
1.8.7-p302
1.8.7-p334
1.8.7-p352
1.8.7-p357
1.8.7-p358
1.9.1-p378
1.9.2-p180
1.9.2-p290
1.9.3-dev
1.9.3-p0
1.9.3-p125
1.9.3-preview1
1.9.3-rc1
2.0.0-dev
jruby-1.6.3
jruby-1.6.4
jruby-1.6.5
jruby-1.6.5.1
jruby-1.6.6
jruby-1.7.0-dev
maglev-1.0.0
rbx-1.2.4
rbx-2.0.0-dev
ree-1.8.6-2009.06
ree-1.8.7-2009.09
ree-1.8.7-2010.01
ree-1.8.7-2010.02
ree-1.8.7-2011.03
ree-1.8.7-2011.12
ree-1.8.7-2012.01

rubyのインストール

$ rbenv install 1.9.3-p125
$ rbenv rehash

インストール後はrehashしないと反映されないようです。

以下のコマンドでインストールされているバージョンを確認できます。

rbenv versions

普段使うバージョンを指定するにはglobalで指定します。

$ rbenv global 1.9.3-p125

特定のフォルダ以下で使うバージョンを指定するにはlocalで指定します。

rbenv local 1.9.3-p125


今のところRVMと比べて特筆すべき特長はないような気がするのだけど、37signalsの中の人が作ってるということで信者がこっちに流れそうな感じですね。