さくらのレンタルサーバーに RubyGems をインストールする手順
参考にさせていただいた文書
さくらのレンタルサーバーにリモートログイン
準備
まず、これからいろいろとファイルをダウンロードするので、それらを保存しておくディレクトリをホームディレクトリに作成しておく。
% mkdir ~/src
作成した src ディレクトリに移動する。
% cd ~/src
RubyGems をダウンロード
ブラウザーで http://rubyforge.org/projects/rubygems/ を開き、RubyGems の最新版を確認する(2008 年 9 月 29 日時点での最新版は 1.3.0 )。
上記URLの文書の「ダウンロード」をクリックして、rubygems-1.3.0.tgz の URL をメモる( http://rubyforge.org/frs/download.php/43985/rubygems-1.3.0.tgz )。
メモった URL を使って、以下のコマンドでダウンロード。
% ftp http://rubyforge.org/frs/download.php/43985/rubygems-1.3.0.tgz
RubyGems のインストール
以下のコマンドでダウンロードした RubyGems のアーカイブを解凍。
% tar zxf rubygems-1.3.0.tgz
解凍すると rubygems-1.3.0 というディレクトリが出来てるのでその中に移動。
% cd rubygems-1.3.0
次に以下のコマンドで RubyGems をインストール。
% ruby setup.rb --prefix=/home/User (※/home/User の User はログインユーザー名で置き換える)
後半の --prefix=/home/User は、インストールするディレクトリを指定するオプション。さくらのレンタルサーバーで、ユーザーがファイルを作成できるのはホームディレクトリ以下だけなので、このオプションが必要。
インストールが正常に完了すると以下のメッセージが表示される。
RubyGems installed the following executables:
/home/User/bin/gem18
If `gem` was installed by a previous RubyGems installation, you may need
to remove it by hand.
(※/home/User の User はログインユーザー名で置き換える)
このメッセージの前半に RubyGems がインストールされたパスが書いてあるので、~/.cshrc というファイルこのパスを自動的に探すように設定を追記する。
% vi ~/.cshrc
set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin)
この行を以下のように変更。
set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin /home/User/bin)
(※/home/User の User はログインユーザー名で置き換える)
それから、RubyGems のインストール先をホームディレクトリ以下に変更したので、環境変数 RUBYLIB と GEM_HOME のパスもこの ~/.cshrc で改めて定義しておく。
setenv RUBYLIB /home/User/lib
setenv GEM_HOME /home/User/lib/ruby/gem
(※/home/User の User はログインユーザー名で置き換える)
これが何をやっているのかは以下の文書に詳しく書いてある。
.cshrc を書き換えたら以下のコマンドで設定を有効にする。
% source ~/.cshrc % rehash
これが何をやっているのかについては以下の文書に詳しく書いてある。
最後にバージョンの確認。
gem18 --version 1.3.0
ここで以下のようなエラーが出たら、環境変数の設定がマズいので見直す。
/home/User/bin/gem18:8:in `require': no such file to load -- rubygems (LoadError) from /home/User/bin/gem18:8 (※/home/User の User はログインユーザー名で置き換える)