heteml に RubyGems をインストールする方法

以下のサイトを参考にさせていただきましたので紹介します。

RubyGems のインストール
hetemlにRubyGemsをインストールする – make for h @ppy_things;

Rubygems のファイルをダウンロードするディレクトリ作成

Rubygems をダウンロードしたり、展開したりするフォルダを作成します。ここにインストールするわけではないので適当な名前で結構です。今回は参考サイトに合わせて ~/rubygems_src とさせていただきます。

1
2
$ mkdir rubygems_src
$ cd rubygems_src

RubyGems のファイルをダウンロードします

RubyGems のサイトのこの辺りからダウンロードしたいファイルの URL 拝借したら良いです。ダウンロードしたらその場で展開します。

1
2
$ wget http://rubyforge.org/frs/download.php/69365/rubygems-1.3.6.tgz
$ tar xvzf rubygems-1.3.6.tgz

rubygems.rb のパスを書き換える

本来であれば後はインストールするだけだったんですが、インストールしてパスを通して実行したら以下のようなエラーが出ましたよ。

/home/sites/heteml/usersXX/X/X/X/XXXX/rubygems/bin/gem: /usr/local/bin/ruby: bad interpreter: No such file or directory

ruby コマンドはこのサーバーだったら /usr/bin/ruby のはずなのに /usr/local/bin/ruby を見に行くようです。とりあえず、このパスの問題を解決するために、インストール前に修正をしましょう。先程展開したフォルダに移動して、rubygems.rb を編集するのです。

1
2
$ cd rubygems-1.3.6
$ vi lib/rubygems.rb

以下のように書かれている部分を。

1
:bindir            => RbConfig::CONFIG["bindir"],

以下のように直接指定して書き換えます。

1
:bindir            => '/usr/bin',

これでパスの問題は解決するはずです。

RubyGems をインストールする

~/rubygems に RubyGems をインストールします。以下のコマンドで一発です。

1
2
$ mkdir ~/rubygems
$ ruby setup.rb --prefix=~/rubygems

環境変数の定義

パスを通すと言っていましたが、どうやら環境変数の定義と言うのが一番正しいのかもしれませんね。とりあえず優秀な方の喋り方をマネします。

今回の設定は gem を叩いたら(?)どこに探しにいくかみたいなことですね。
先人の方々はいろいろと工夫されているようですが、私の環境では上手くいかなかっので、必ず上手く行くその都度設定の仕方だけを紹介しておきます。今後他の方法については調査していきます。

1
2
$ export PATH=$PATH:~/rubygems/bin
export RUBYLIB=$RUBYLIB:~/rubygems/lib

これで gem が使えるようになります。試しに以下を試してください。

1
2
$ gem -v
1.3.6

バージョン情報が出てくるようですよ。

コメント

  1. システムエンジニアさんのコメント

    大変参考になります!