CentOS 4 なサーバーに yum で ruby をインストールしたら、
ruby 1.8.1 がインストールされた。
# yum -y install ruby
# ruby -v
ruby 1.8.1 (2003-12-25) [i386-linux-gnu]
まぁちょっとくらいバージョン低くてもいっかーって思ってたけど、
rubygems がうまくインストールできなくて困った。
(ruby 1.8.1 でインストールできる rubygems は 1.3.1 らしい。)
# wget http://rubyforge.org/frs/download.php/45905/rubygems-1.3.1.tgz
# tar xzf rubygems-1.3.1.tgz
# cd rubygems-1.3.1
# ruby setup.rb
./lib/rubygems.rb:723:in `set_paths': uninitialized constant Gem::Etc (NameError)
from ./lib/rubygems.rb:719:in `each'
from ./lib/rubygems.rb:719:in `set_paths'
from ./lib/rubygems.rb:526:in `path'
from ./lib/rubygems/source_index.rb:66:in `installed_spec_directories'
from ./lib/rubygems/source_index.rb:56:in `from_installed_gems'
from ./lib/rubygems.rb:736:in `source_index'
from ./lib/rubygems/gem_path_searcher.rb:86:in `init_gemspecs'
from ./lib/rubygems/gem_path_searcher.rb:21:in `initialize'
from ./lib/rubygems.rb:684:in `new'
from ./lib/rubygems.rb:684:in `searcher'
from ./lib/rubygems.rb:683:in `synchronize'
from ./lib/rubygems.rb:683:in `searcher'
from ./lib/rubygems/custom_require.rb:34:in `require'
from /usr/lib/ruby/1.8/tmpdir.rb:12
from ./lib/rubygems/custom_require.rb:31:in `gem_original_require'
from ./lib/rubygems/custom_require.rb:31:in `require'
from setup.rb:95
ググってみると、
「バージョンを上げなよ」的なことを言われたので、
大人しくバージョンを上げることにする。
ただ、インストールはできるだけパッケージ管理アプリケーションに任せたいので、
下記サイトを参考にrpmパッケージを作成してインストールすることにする。
CentOSのyumでインストールしたRubyをバージョンアップ(インストール) « FlatLabs Blog
まずは ruby のアンインストールと、
rpm-build と checkinstall のインストール。
# yum -y remove ruby ruby-devel ruby-libs
# yum -y install rpm-build checkinstall
# rpm -q rpm-build
rpm-build-4.3.3-33_nonptl.el4_8.1
# rpm -q checkinstall
checkinstall-1.6.0-3.el4.rf
そんでもって、
ruby のソースをダウンロードして、
rpmパッケージ作成、
そしてインストール。
# wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p302.tar.gz
# tar zxvf ruby-1.8.7-p302.tar.gz
# cd ruby-1.8.7-p302
# ./configure --prefix=/usr
# make
# checkinstall --fstrans=no
なんかいろいろ聞かれるけど、
上記サイトを参考に適当に答えてたら、
ruby-1.8.7-p302-1.i386.rpm が完成、
そしてインストール。
# rpm -Uvh /usr/src/redhat/RPMS/i386/ruby-1.8.7-p302-1.i386.rpm
# ruby -v
ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-linux]
引き続き rubygems 1.3.7 をインストール。
# wget http://rubyforge.org/frs/download.php/70696/rubygems-1.3.7.tgz
# tar xzf rubygems-1.3.7.tgz
# cd rubygems-1.3.7
# ruby setup.rb
# gem -v
1.3.7
以上。