さくらインターネットでCPANを使う(local::libを使う。いろいろ修正してみた)

local::libを使った非rootでのCPAN環境構築
がものすごく参考になりました。

環境変数の設定とか

さくらインターネットだと*1デフォルトのシェルがcshなので、.cshrcに環境変数を設定する。あとホームディレクトリ配下に local/var/db/pkg というディレクトリも作っておく。

$ mkdir -p ~/local/var/db/pkg

% vi .cshrc
setenv PATH $HOME/local/bin:$PATH
setenv PKG_DBDIR $HOME/local/var/db/pkg
setenv PORT_DBDIR $HOME/local/var/db/pkg
setenv LD_LIBRARY_PATH $HOME/local/lib

local::libの取得・解凍

リンク先のlocal::libのバージョンだと古いみたいで、途中でつまづく。2011年11月4日の時点では、1.008004が最新*2なので、それを使います。

$ wget http://search.cpan.org/CPAN/authors/id/A/AP/APEIRON/local-lib-1.008004.tar.gz
$ tar xzvf local-lib-1.008004.tar.gz

local::libのmakeとか

$ cd local-lib-1.008004
$ perl Makefile.PL --bootstrap=$HOME/local
※対話式に進むので、Enterキーで進めていく。
 ロケーションとかFTPサーバを選択する個所があるので、そこだけは入力が必要。

$ make && make test
※テストが走るので、問題無さそうなら次のインストールを行う。

$ make install

また環境変数の設定

リンク先の方法だとcshの場合の方法が間違っているので注意*3。evalを使わずに、確実にできる方法でcshrcに追記する。

% perl -I$HOME/local/lib/perl5 -Mlocal::lib=$HOME/local >> ~/.cshrc

完了

あとは source ~/.cshrc とかで再読み込みをすれば普通にCPANが使えるはず。まずは Bundle::CPANをインストールすれば良いっぽいけど、いろいろとインストール失敗するかもしれない。。でもまぁエラーメッセージ読んで必要なモジュールを片っ端からインストールしていけばなんとかなるはず。。

*1:僕の環境では

*2:なんつーバージョン番号だ

*3:evalが無い。ディレクトリのパスが間違っている