ruby rvmを用いてruby update

RVM(Ruby Version Manager)はUNIX系の環境で
複数のRuby処理系をインストール/共存させることができるツール


RVMはbashスクリプトで,RVMを導入することで以下のようなことができます。

-Rubyのインストール
-使用するRuby処理系の切り替え
-複数のRubyスクリプトを一斉に実行
-gemの管理
-違いを意識することなく同一の手順でインストールできる
-すぐに最新のRubyを入手できる
-それぞれのRubyrubyで実行できる

だそうなので、
これは試すしかないですな


最後までセットアップできるとこんな感じでとても便利

[hirasawa@ubunt1004-32-2 ~]$ rvm list

rvm rubies

   ruby-1.8.7-head [ i686 ]
   ruby-1.9.2-head [ i686 ]

[hirasawa@ubunt1004-32-2 ~]$ ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [i486-linux]
[hirasawa@ubunt1004-32-2 ~]$ rmv
No command 'rmv' found, but there are 16 similar ones
rmv: command not found
[hirasawa@ubunt1004-32-2 ~]$ rvm use ruby-1.8.7-head
Using /home/hirasawa/.rvm/gems/ruby-1.8.7-head
[hirasawa@ubunt1004-32-2 ~]$ ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]
[hirasawa@ubunt1004-32-2 ~]$ rvm use ruby-1.9.2-head
Using /home/hirasawa/.rvm/gems/ruby-1.9.2-head
[hirasawa@ubunt1004-32-2 ~]$ ruby -v
ruby 1.9.2p312 (2011-08-11 revision 32926) [i686-linux]
[hirasawa@ubunt1004-32-2 ~]$ 

1.8.7と1.9.2との挙動の違いなんかもすぐ確認できる。

[hirasawa@ubunt1004-32-2 ~]$ rvm use ruby-1.9.2-head
Using /home/hirasawa/.rvm/gems/ruby-1.9.2-head
[hirasawa@ubunt1004-32-2 ~]$ irb
Readline was unable to be required, if you need completion or history install readline then reinstall the ruby.
You may follow 'rvm notes' for dependencies and/or read the docs page https://rvm.beginrescueend.com/packages/readline/ . Be sure you 'rvm remove X ; rvm install X' to re-compile your ruby with readline support after obtaining the readline libraries.
ruby-1.9.2-head :001 > "1234".split(//).to_s
 => "[\"1\", \"2\", \"3\", \"4\"]" 
ruby-1.9.2-head :002 > "1234".split(//).to_s.class
 => String 
ruby-1.9.2-head :003 > quit
[hirasawa@ubunt1004-32-2 ~]$ rvm use ruby-1.8.7-head
Using /home/hirasawa/.rvm/gems/ruby-1.8.7-head
[hirasawa@ubunt1004-32-2 ~]$ irb
Readline was unable to be required, if you need completion or history install readline then reinstall the ruby.
You may follow 'rvm notes' for dependencies and/or read the docs page https://rvm.beginrescueend.com/packages/readline/ . Be sure you 'rvm remove X ; rvm install X' to re-compile your ruby with readline support after obtaining the readline libraries.
ruby-1.8.7-head :001 > "1234".split(//).to_s
 => "1234" 
ruby-1.8.7-head :002 > "1234".split(//).to_s.class
 => String 
ruby-1.8.7-head :003 > quit
[hirasawa@ubunt1004-32-2 ~]$ 
root@ubunt1004-32-2:~# apt-get -V install ruby-full
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
   libjna-java (3.2.3-1)
   libswing-layout-java (1.0.3-2)
   linux-headers-2.6.32-21 (2.6.32-21.32)
   javahelp2 (2.0.05.ds1-3)
   linux-headers-2.6.32-21-generic (2.6.32-21.32)
   libnb-platform11-java (6.8-0ubuntu2)
   visualvm (1.2.2-0ubuntu2)
これらを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
   emacs (23.1+1-4ubuntu7.2)
   emacs23 (23.1+1-4ubuntu7.2)
   emacs23-bin-common (23.1+1-4ubuntu7.2)
   emacs23-common (23.1+1-4ubuntu7.2)
   emacsen-common (1.4.19ubuntu1)
   libdbm-ruby (4.2)
   libdbm-ruby1.8 (1.8.7.249-2)
   libgdbm-ruby (4.2)
   libgdbm-ruby1.8 (1.8.7.249-2)
   libopenssl-ruby (4.2)
   libreadline-ruby (4.2)
   libtcltk-ruby (4.2)
   libtcltk-ruby1.8 (1.8.7.249-2)
   ri (4.2)
   ri1.8 (1.8.7.249-2)
   ruby-elisp (4.2)
   ruby1.8-dev (1.8.7.249-2)
   ruby1.8-elisp (1.8.7.249-2)
提案パッケージ:
   emacs23-el (23.1+1-4ubuntu7.2)
以下のパッケージが新たにインストールされます:
   emacs (23.1+1-4ubuntu7.2)
   emacs23 (23.1+1-4ubuntu7.2)
   emacs23-bin-common (23.1+1-4ubuntu7.2)
   emacs23-common (23.1+1-4ubuntu7.2)
   emacsen-common (1.4.19ubuntu1)
   libdbm-ruby (4.2)
   libdbm-ruby1.8 (1.8.7.249-2)
   libgdbm-ruby (4.2)
   libgdbm-ruby1.8 (1.8.7.249-2)
   libopenssl-ruby (4.2)
   libreadline-ruby (4.2)
   libtcltk-ruby (4.2)
   libtcltk-ruby1.8 (1.8.7.249-2)
   ri (4.2)
   ri1.8 (1.8.7.249-2)
   ruby-elisp (4.2)
   ruby-full (4.2)
   ruby1.8-dev (1.8.7.249-2)
   ruby1.8-elisp (1.8.7.249-2)
アップグレード: 0 個、新規インストール: 19 個、削除: 0 個、保留: 2 個。
27.4MB のアーカイブを取得する必要があります。
この操作後に追加で 131MB のディスク容量が消費されます。
続行しますか [Y/n]? 
root@ubunt1004-32-2:~# apt-get -V install ruby1.9.1-full
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
   libjna-java (3.2.3-1)
   libswing-layout-java (1.0.3-2)
   linux-headers-2.6.32-21 (2.6.32-21.32)
   javahelp2 (2.0.05.ds1-3)
   linux-headers-2.6.32-21-generic (2.6.32-21.32)
   libnb-platform11-java (6.8-0ubuntu2)
   visualvm (1.2.2-0ubuntu2)
これらを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
   irb1.9.1 (1.9.1.378-1)
   libdbm-ruby1.9.1 (1.9.1.378-1)
   libgdbm-ruby1.9.1 (1.9.1.378-1)
   libopenssl-ruby1.9.1 (1.9.1.378-1)
   libreadline-ruby1.9.1 (1.9.1.378-1)
   libruby1.9.1 (1.9.1.378-1)
   libruby1.9.1-dbg (1.9.1.378-1)
   libtcltk-ruby1.9.1 (1.9.1.378-1)
   rdoc1.9.1 (1.9.1.378-1)
   ri1.9.1 (1.9.1.378-1)
   ruby1.9.1 (1.9.1.378-1)
   ruby1.9.1-dev (1.9.1.378-1)
   ruby1.9.1-examples (1.9.1.378-1)
提案パッケージ:
   graphviz (2.20.2-8ubuntu3)
   rubygems1.9.1 (1.3.5-1ubuntu2)
   ruby1.9.1-elisp (1.9.1.378-1)
以下のパッケージが新たにインストールされます:
   irb1.9.1 (1.9.1.378-1)
   libdbm-ruby1.9.1 (1.9.1.378-1)
   libgdbm-ruby1.9.1 (1.9.1.378-1)
   libopenssl-ruby1.9.1 (1.9.1.378-1)
   libreadline-ruby1.9.1 (1.9.1.378-1)
   libruby1.9.1 (1.9.1.378-1)
   libruby1.9.1-dbg (1.9.1.378-1)
   libtcltk-ruby1.9.1 (1.9.1.378-1)
   rdoc1.9.1 (1.9.1.378-1)
   ri1.9.1 (1.9.1.378-1)
   ruby1.9.1 (1.9.1.378-1)
   ruby1.9.1-dev (1.9.1.378-1)
   ruby1.9.1-examples (1.9.1.378-1)
   ruby1.9.1-full (1.9.1.378-1)
アップグレード: 0 個、新規インストール: 14 個、削除: 0 個、保留: 2 個。
10.4MB のアーカイブを取得する必要があります。
この操作後に追加で 74.6MB のディスク容量が消費されます。
続行しますか [Y/n]? 
root@ubunt1004-32-2:~# apt-get -V install rubygems
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
   libjna-java (3.2.3-1)
   libswing-layout-java (1.0.3-2)
   linux-headers-2.6.32-21 (2.6.32-21.32)
   javahelp2 (2.0.05.ds1-3)
   linux-headers-2.6.32-21-generic (2.6.32-21.32)
   libnb-platform11-java (6.8-0ubuntu2)
   visualvm (1.2.2-0ubuntu2)
これらを削除するには 'apt-get autoremove' を利用してください。
以下のパッケージが新たにインストールされます:
   rubygems (1.3.5-1ubuntu2)
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 2 個。
2,684B のアーカイブを取得する必要があります。
この操作後に追加で 98.3kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ lucid/universe rubygems 1.3.5-1ubuntu2 [2,684B]
2,684B を 0s で取得しました (21.2kB/s)
未選択パッケージ rubygems を選択しています。
(データベースを読み込んでいます ... 現在 360098 個のファイルとディレクトリがインストールされています。)
(.../rubygems_1.3.5-1ubuntu2_all.deb から) rubygems を展開しています...
rubygems (1.3.5-1ubuntu2) を設定しています ...
root@ubunt1004-32-2:~# 
root@ubunt1004-32-2:~# gem install rubygems-update
Successfully installed rubygems-update-1.8.11
1 gem installed
Installing ri documentation for rubygems-update-1.8.11...
Installing RDoc documentation for rubygems-update-1.8.11...
root@ubunt1004-32-2:~# gem1.9.1 install rubygems-update
プログラム 'gem1.9.1' はまだインストールされていません。  次のように入力することでインストールできます:
apt-get install rubygems1.9.1
root@ubunt1004-32-2:~# apt-get -V install rubygems1.9.1
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
   libjna-java (3.2.3-1)
   libswing-layout-java (1.0.3-2)
   linux-headers-2.6.32-21 (2.6.32-21.32)
   javahelp2 (2.0.05.ds1-3)
   linux-headers-2.6.32-21-generic (2.6.32-21.32)
   libnb-platform11-java (6.8-0ubuntu2)
   visualvm (1.2.2-0ubuntu2)
これらを削除するには 'apt-get autoremove' を利用してください。
提案パッケージ:
   rubygems-doc (1.3.5-1ubuntu2)
以下のパッケージが新たにインストールされます:
   rubygems1.9.1 (1.3.5-1ubuntu2)
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 2 個。
191kB のアーカイブを取得する必要があります。
この操作後に追加で 844kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com/ubuntu/ lucid/universe rubygems1.9.1 1.3.5-1ubuntu2 [191kB]
191kB を 0s で取得しました (283kB/s)
未選択パッケージ rubygems1.9.1 を選択しています。
(データベースを読み込んでいます ... 現在 360103 個のファイルとディレクトリがインストールされています。)
(.../rubygems1.9.1_1.3.5-1ubuntu2_all.deb から) rubygems1.9.1 を展開しています...
man-db のトリガを処理しています ...
rubygems1.9.1 (1.3.5-1ubuntu2) を設定しています ...

root@ubunt1004-32-2:~# rubygem1.9.1 install rubygems-update
rubygem1.9.1: command not found
root@ubunt1004-32-2:~# gem1.9.1 install rubygems-update
Successfully installed rubygems-update-1.8.11
1 gem installed
Installing ri documentation for rubygems-update-1.8.11...
Updating class cache with 1382 classes...
Installing RDoc documentation for rubygems-update-1.8.11...
root@ubunt1004-32-2:~# 
root@ubunt1004-32-2:~# /var/lib/gems/1.8/bin/update_rubygems 
RubyGems 1.8.11 installed

== 1.8.11 / 2011-10-03

* Bug fix:
  * Deprecate was moved to Gem::Deprecate to stop polluting the top-level
    namespace.


------------------------------------------------------------------------------

RubyGems installed the following executables:
	/usr/bin/gem1.8

root@ubunt1004-32-2:~# /var/lib/gems/1.9.1/bin/update_rubygems 
RubyGems 1.8.11 installed

== 1.8.11 / 2011-10-03

* Bug fix:
  * Deprecate was moved to Gem::Deprecate to stop polluting the top-level
    namespace.


------------------------------------------------------------------------------

RubyGems installed the following executables:
	/usr/bin/gem1.9.1

root@ubunt1004-32-2:~# 


ちょっとつかれたので、一休み
一休み

後で追記します。ねむいよ