ruby rvmを用いてruby update
RVM(Ruby Version Manager)はUNIX系の環境で
複数のRuby処理系をインストール/共存させることができるツール
RVMはbashスクリプトで,RVMを導入することで以下のようなことができます。
-Rubyのインストール
-使用するRuby処理系の切り替え
-複数のRubyでスクリプトを一斉に実行
-gemの管理
-違いを意識することなく同一の手順でインストールできる
-すぐに最新のRubyを入手できる
-それぞれのRubyをrubyで実行できる
だそうなので、
これは試すしかないですな
最後までセットアップできるとこんな感じでとても便利
[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:~#
ちょっとつかれたので、一休み
一休み
後で追記します。ねむいよ