RubyをCentOS6へソースコードからインストール

追記:いまなら、CentOS6 で Ruby1.9.3-p448を簡単インストール | hiro345 の方がいいですね。

Rubyをソースコードからインストールしたい場合があります。Ruby Install Guide::UNIX全般が参考になります。

ということでやってみました。

準備
Rubyのコンパイルに必要なライブラリの確認。OpenSSL、zlib、readlineのライブラリが必要だということなので開発用パッケージをインストール。libyamlも必要だということなので、64bit版をrpmforgeからインストール。すでにインストール済みの場合でも、確認のためにコマンドは実行しておくと良いでしょう。

$ sudo yum install openssl-devel zlib-devel readline-devel
$ sudo yum --enablerepo=rpmforge install libyaml libyaml-devel

ダウンロードとインストール
実行するバージョンを選べるように、バージョン毎に $HOME/applications へインストールできるようにしておきます。make でコンパイルをしてバイナリコードを生成しています。make test は生成したバイナリコードが正しく動作することを確認しています。どちらも実行に時間がかかります。make testが成功したら、後は make installでインストールするだけです。このあたり、やはりRPMを使うのよりは時間がかかります。rvmやrbenvを使う場合には内部的に同じようなことをしているのでかかる時間は同程度になるはずです。

$ wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p286.tar.bz2
$ tar xvf ruby-1.9.3-p286.tar.bz2
$ cd ruby-1.9.3-p286
$ ./configure --prefix=$HOME/applications/ruby-1.9.3-p286
$ make
$ make test
$ make install

DSO対応版は下記のようにしてコンパイルが必要です。

$ ./configure --prefix=$HOME/applications/ruby-1.9.3-p286 --enable-shared

動作確認
バージョンの表示と、簡単なプログラムの実行。

$ $HOME/applications/ruby-1.9.3-p286/bin/ruby -v
ruby 1.9.3p286 (2012-10-12) [x86_64-linux]
$ echo "puts 'hello ruby'" | $HOME/applications/ruby-1.9.3-p286/bin/ruby
hello ruby

PATHの設定
必要なら、.bash_profile でPATHを通しておきます。

export PATH=$HOME/applications/ruby-1.9.3-p286/bin:$PATH
同じタグの記事: CentOS
同じタグの記事: CentOS6
同じタグの記事: Linux
同じタグの記事: Ruby
同じカテゴリの記事: Program
関連書籍: CentOS
関連書籍: Ruby