それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

rvmを捨ててrbenvを使おう

僕も rbenv に乗り換えることにした。

https://twitter.com/taka84u9/status/222336322222833664

を見てて、rbenv面白そうと思ってから3ヶ月以上。やっと、移行することにしました。

rbenv本体インストール

Macで行くので、brew で簡単にインストールできます。brew 以外は github から cloneだね(linuxcygwinも徐々に変更予定)

brew install rbenv ruby-build 

rbenvは ruby-buildと一緒に使います。ruby-buildがないと大変です。

gem一覧をバックアップ

gem list > ~/gemlist.txt

インストールできたら、bashrcを書き換えます。

echo 'eval "$(rbenv init -)"' >> ~/.bashrc
eval  "$(rbenv init -)"

bash_profileを書き換えるべきだと思うんですが*1。まぁ大して変わらないので管理をまとめるためbashrcにしました。

rbenv を使ってみる

takuya@air:~$ rbenv install 
1.8.6-p383            1.9.2-p180            1.9.3-rc1             jruby-1.6.8           ree-1.8.6-2009.06
1.8.6-p420            1.9.2-p290            2.0.0-dev             jruby-1.7.0           ree-1.8.7-2009.09
1.8.7-p249            1.9.2-p318            jruby-1.5.6           jruby-1.7.0-preview1  ree-1.8.7-2009.10
1.8.7-p302            1.9.2-p320            jruby-1.6.3           jruby-1.7.0-preview2  ree-1.8.7-2010.01
1.8.7-p334            1.9.3-dev             jruby-1.6.4           jruby-1.7.0-rc1       ree-1.8.7-2010.02
1.8.7-p352            1.9.3-p0              jruby-1.6.5           jruby-1.7.0-rc2       ree-1.8.7-2011.03
1.8.7-p357            1.9.3-p125            jruby-1.6.5.1         maglev-1.0.0          ree-1.8.7-2011.12
1.8.7-p358            1.9.3-p194            jruby-1.6.6           maglev-1.1.0-dev      ree-1.8.7-2012.01
1.8.7-p370            1.9.3-p286            jruby-1.6.7           rbx-1.2.4             ree-1.8.7-2012.02
1.9.1-p378            1.9.3-preview1        jruby-1.6.7.2         rbx-2.0.0-dev         

結構候補がありますね。

rubyをインストール

rbenv install 1.9.3-dev
rbenv rehash

rehashはおまじない。

2012/11/11追記

rbenv install 1.9.3-devは以下のようにする。

osx のreadlineライブラリは日本語が通らないので、homebrewを使うようにする。以下のようにコンパイルする。

brew install openssl readline
brew link openssl readline
CONFIGURE_OPTS="--with-readline-dir=`brew --prefix` --with-openssl-dir=`brew --prefix`" rbenv install 1.9.3-dev
rbenv rehash

インストールしたものをデフォルトに

rbenv global 1.9.3-dev

最後にgem 再インストール

いままで使ってたgemsをrbenvのruby用に作り直します。

gem install ` cat ~/gemlist.txt`

再インストールは別に無くても大丈夫なだけど、ぼくはrvmディレクトリをマルっと消したかったので、作り直しました。

2012/11/11追記

irb で日本語が通らないことに気づいた。readline かと思ったらやっぱりreadlineだった。
irbで日本語が通らない場合は

irb --noreadline

で起動してみましょう。--noreadlineで日本語が使えるなら、間違いなくreadlineが原因です。osx + ruby の日本語readline環境に悩まされたら、とりあえず --noreadlineオプションで起動して、日本語が入るようならreadlineリンクしなおしで何とかなりますよ。


*1:一回だけ評価されるので