Mac OS X Lion に RVM で Ruby の開発環境を構築する手順

Mac OS Lion, Xcode4.1 にて、Rubyのバージョン管理ツール RVM を使って Ruby の開発環境を整える手順をご紹介します。
 

apple-gcc42 のインストール

(Xcode4.1以前の方はこの項目をスキップ)

■ 方法その1

まず、Xcode4.2 を使ってる方は、サポートされている gcc が変わったので、従来まで入っていた apple-gcc42 をインストールします。

[Mac] Homebrew で apple-gcc42 をインストールする方法 | CodeNote.net はてなブックマーク - [Mac] Homebrew で apple-gcc42 をインストールする方法 | CodeNote.net

Homebrewをインストールしていない方はこちらを参考にして下さい。

[Mac] Homebrew をインストール | CodeNote.net はてなブックマーク - [Mac] Homebrew をインストール | CodeNote.net
 

■ 方法その2

OSX GCC Installer を使う。

kennethreitz/osx-gcc-installer はてなブックマーク - kennethreitz/osx-gcc-installer
 

RVMのインストール

Rubyのバージョン管理ツール RVM をインストールします。

$ bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

次に、~/.bash_profile に設定を追加します。

既に作成されていて、設定が書かれていたら特に何もする必要はありません。

$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile

設定後、.bash_profile を再読み込みします。

$ source ~/.bash_profile

 

Readlineなどの必要なライブラリーのインストール

必要に応じてライブラリーをインストールします。

rvm コマンドでインストールする前に一時的に環境変数を変更します。

export ARCHFLAGS="-arch x86_64"
export CC='gcc-4.2'

最低限 readline はインストールするとして、他も必要に応じてインストールします。

rvm pkg install readline
rvm pkg install iconv
rvm pkg install zlib
rvm pkg install openssl

 

Rubyをバージョン指定してインストール

Ruby の 1.9.3 と 1.9.2 と 1.8.7 の安定版をインストールします。

rvm install 1.9.3
rvm install 1.9.2
rvm install 1.8.7

それぞれ、正常にインストールされたか確認します。

$ rvm list
rvm rubies
 
   ruby-1.8.7-p357 [ i686 ]
   ruby-1.9.2-p290 [ x86_64 ]
   ruby-1.9.3-p0 [ x86_64 ]
 
# Default ruby not set. Try 'rvm alias create default <ruby>'.
 
# => - current
# =* - current && default
#  * - default

 

デフォルトの Ruby のバージョンを設定

最後に、デフォルトで使うRubyのバージョンを指定します。

今回は Ruby 1.9.3 をデフォルトにします。

$ rvm use 1.9.3 --default
Using /Users/your_username/.rvm/gems/ruby-1.9.3-p0

ちゃんと設定されたか確認します。

$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.3.0]
 
$ rvm list
 
rvm rubies
 
   ruby-1.8.7-p357 [ i686 ]
   ruby-1.9.2-p290 [ x86_64 ]
=* ruby-1.9.3-p0 [ x86_64 ]
 
# => - current
# =* - current && default
#  * - default

以上です。