hogehoge foobar Blog Style Beta

Web,Mac,Linux,JavaScript,Perl,PHP,RegExp,Git,Vim,Redmineなど技術的なことのメモや、ちょっと便利そうなものの紹介をしています。

Mac に rvm をインストールして 複数バージョンの Ruby を使う

久しぶりに Ruby やら Rails を触っていて、Ruby 1.8系と 1.9系のどちらも使いたくなったので、rvm を導入してみました。
導入及び使い方については、RVMでMacにも複数のRuby環境を!(1) # Leopard - たぐってつづる が、とても参考になりました。

rvm のインストール

rvm のインストール手順は以下のとおりになります。
インストールには git が必要になるので、事前にインストールをする必要があります。

$ git clone --depth 1 git://github.com/wayneeseguin/rvm.git
$ cd rvm 
$ ./install

インストールが完了したら、以下の行を .bashrc に追記・設定します。
# ホームディレクトリ直下の「.rvm」に作成されたスクリプトを読み込む設定になります。

# RVM
[ -s ${HOME}/.rvm/scripts/rvm ] && source ${HOME}/.rvm/scripts/rvm

設定が完了したら、「source ~/.bashrc」か 再ログイン で設定を読み込みます。
「rvm -v」でバージョンが確認できたら、OKになります。

$ rvm -v

rvm 1.6.9 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]

rvm のインストール先について

インストールが完了すると、ユーザーのホームディレクトリ配下に「.rvm」というディレクトリが作成されます。
rvmでは、rvm本体を含め、今後インストールするruby本体についても「.rvm」ディレクトリ以下にインストールされます。

$ which rvm
/Users/user/.rvm/bin/rvm
$
$ which ruby
/Users/user/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
$  
$ which rails
/Users/user/.rvm/gems/ruby-1.9.2-p180/bin/rails
$
$ ls /Users/user/.rvm
LICENCE		config		gemsets		patches		tmp
README		contrib		help		repos		user
VERSION		environments	lib		rubies		wrappers
archives	examples	log		scripts
bin		gems		man		src
$ 

rvm の使い方

rvm の簡単な使い方です。

rvm でインストール可能なバージョンを確認

「rvm list known」で確認出来ます。

$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.6-head
[ruby-]1.8.7[-p334]
[ruby-]1.8.7-head
[ruby-]1.9.1-p378
[ruby-]1.9.1[-p431]
[ruby-]1.9.1-head
[ruby-]1.9.2[-p180]
[ruby-]1.9.2-head

〜 (省略) 〜
rvm で Ruby をインストール

「rvm install バージョン」でインストールが出来ます。
例えば「1.9.2」をインストールする場合は以下のようになります。

$ rvm install 1.9.2
Installing Ruby from source to: /Users/user/.rvm/rubies/ruby-1.9.2-p180, this may take a while depending on your cpu(s)...

ruby-1.9.2-p180 - #fetching 
ruby-1.9.2-p180 - #downloading ruby-1.9.2-p180, this may take a while depending on your connection...

〜 (省略) 〜

Install of ruby-1.9.2-p180 - #complete 
インストールした Ruby の確認

「rvm list」で確認することが出来ます。

$ rvm list

rvm rubies

   ruby-1.9.2-head [ x86_64 ]
   ruby-1.9.2-p180 [ x86_64 ]
使用する Ruby のバージョンを選択

「rvm use バージョン」で使用するバージョンを選択することが出来ます。
例えば「1.9.2」を使用する場合は以下のようになります。

$ rvm use 1.9.2
Using /Users/user/.rvm/gems/ruby-1.9.2-p180
$
$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.7.0]

「rvm list」で確認すると、選択したバージョンに「=>」が表示されます。

$ rvm list

rvm rubies

   ruby-1.9.2-head [ x86_64 ]
=> ruby-1.9.2-p180 [ x86_64 ]
システム標準のバージョンに戻す

rvm では無く、システム標準の Ruby に戻す場合は「rvm reset」を使います。

$ rvm reset
$ 
$ ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
デフォルトで使用するバージョンを指定

「rvm use バージョン」で選択しただけだと、ログオフ等をしてしまうとシステム標準のバージョンに戻ってしまい面倒なことがあります。
デフォルトで使用するバージョンを指定するには、「rvm --default バージョン」を使います。

$ rvm --default 1.9.2

(補足) irb で日本語入力ができない場合の対処

irb を使用した場合に、日本語の入力が出来ない現象が発生しました。
Macのirbで日本語入力ができないのでreadlineを入れなおす - WapBox を参考に、「readline」をインストールしなおしたら解決しました。
「readline」はMacPortからインストールしました。

$ sudo port install readline
Password:
--->  Computing dependencies for readline
--->  Fetching readline
--->  Attempting to fetch readline-6.1.tar.gz from ftp://ftp.dti.ad.jp/pub/GNU/readline
--->  Verifying checksum(s) for readline
--->  Extracting readline
--->  Applying patches to readline
--->  Configuring readline
--->  Building readline
--->  Staging readline into destroot
--->  Installing readline @6.1.000_1+darwin
--->  Activating readline @6.1.000_1+darwin
--->  Cleaning readline

今回参考にしたページ

RVMでMacにも複数のRuby環境を!(1) # Leopard - たぐってつづる
http://d.hatena.ne.jp/hrsth/20100523/1274590336

RVMでMacにも複数のRuby環境を!(2) # Leopard - たぐってつづる
http://d.hatena.ne.jp/hrsth/20100523/1274592111

RVMでMacにも複数のRuby環境を!(3) # Leopard - たぐってつづる
http://d.hatena.ne.jp/hrsth/20100523/1274595857

Ruby Freaks Lounge:第39回 RVM(Ruby Version Manager)による環境構築|gihyo.jp … 技術評論社
http://gihyo.jp/dev/serial/01/ruby/0039

RVMを導入していろいろなバージョンのRubyを使いやすくする - 明日から本気出す
http://d.hatena.ne.jp/rkmathi/20110308/1299570023

Macのirbで日本語入力ができないのでreadlineを入れなおす - WapBox
http://d.hatena.ne.jp/arcright/20100614/1276481709