[ruby] 複数バージョンのrubyを使い分ける rvm をインストール
ruby1.8系7ruby1.9系、更にはjrubyまでもをコマンド一つで切り替えられる素晴らしいツール。
しかも、
rvm install jruby
と入力するだけで、インストールまでしてくれる。
何とも至れり尽くせり!!
■インストール
#gem install rvm %rvm-install
たったこれだけ。
のはずなんだけど。。。
確かにcygwin環境では上記の手順だけでインストールは正常終了したけれども、Vine Linux では rvm-install が上手く動いてくれない。
以下、対策。
1.インストールの際にコールされるスクリプトのパーミッション修正
実行属性が抜けているので、立ててやる
#chmod +x /usr/lib/ruby/gems/1.8/gems/rvm-0.0.27/scripts/*
2.シェルスクリプトが途中で落ちる
何故か rvm-0.0.27/scripts/rvm の
の部分で落ちている。
PATH=${PATH%:}
どうも設定されているパスが長いと落ちてしまうようだ(vine特有???)。
根本から直すのは面倒なので、
# PATH="${PATH%:}" PATH=`echo $PATH | /usr/bin/ruby -e 'puts gets.chomp.gsub(/:$/,"")'`
と、いい加減な修正をする。
3.rvm-install 自体が動かない
満を持して rvm-install を実行しても
sh: line 1: bash -l -c 'cd /usr/lib/ruby/gems/1.8/gems/rvm-0.0.27 && ./scripts/rvm-install && source ~/.rvm/scripts/rvm': そのようなファイルやディレクトリはありません
とエラーが出力される。
もう面倒なので、"bash -l -c ..... ~/.rvm/scripts/rvm'" の部分をコピペして、自分で実行。
以上でめでたくインストール完了しました。
しかし、Linuxの方が上手くいかないケースっていうのは珍しいな……
2009/9/4追記
rvm 0.0.32 (2009.09.03) なるものがリリースされ、ほとんどの問題が解決されていた。
タイムリーすぎる orz
※途中で sed がエラーを出力するようになったが、特に問題はなさそう。