玄箱PRO(Debian化済み)にソースからRubyのインストール


1.9系の安定版がリリースされたので、さっそくソースからインストールしてみました。
aptでインストールされる1.8系も残したかったので、一般ユーザ(user)専用にインストール。

ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p0.tar.bz2

ここからダウンロード。


展開し、./configure; make; make install

$ tar xvfj ruby-1.9.1-p0.tar.bz2
$ cd ruby-1.9.1-p0
$ ./configure --prefix=/home/user/ruby-1.9.1-p0
$ make
$ make install


userユーザ専用にしたかったので、./configure時にprefixを指定しました。
/home/user/ruby-1.9.1-p0にインストールしたので、/home/user/.bash_profileを修正し、PATHの設定。
以下のように追記する。

export PATH=/home/user/ruby-1.9.1-p0/bin:$PATH

今回インストールしたrubyを優先させたいので先に指定する。
ログインし直し、PATHの確認

$ruby -v

以下の通り表示されました。

ruby 1.9.1p0 (2009-01-30 revision 21907) [powerpc-linux]


rubyが入ったので次はさっそくrailsだろうということでまずはgem listの確認。

$ gem list

/home/user/ruby-1.9.1-p0/lib/ruby/1.9.1/rubygems/spec_fetcher.rb:1:in `require': no such file to load -- zlib (LoadError)

怒られました。。。

調べてみたところ、Debianの方にzlibの開発ライブラリパッケージ(zlib1g-dev)が入っていないことが原因と判明。(ここはrootユーザで)

# aptitude install zlib1g-dev


rubyのzlib用モジュールの作り直し。


ruby-1.9.1-p0を展開したディレクトリ(makeしたところ)のext/zlibへ移動し、以下のコマンドを入力する。

$ cd ext/zlib
$ ruby extconf.rb --with-zlib-include=/usr/include --with-zlib-lib=/usr/lib

zlibモジュール作成用Makefileができるのでmake; make install

$ make
$ make install

$ gem list

*** LOCAL GEMS ***

うまくいきました。