otsune's SnakeOil RSSフィード

python -c "print''.join([chr(x) for x in 111&1101,110+~-~11,10^11*11,110+~-~11,-~101,-~11^11*11,~-110,111&11*11,11+11+10,11|~-0110,1-~11^11*11,10^11*11,-~11^11*11,110,101])"

2010-02-19

cpanminusを使うとメモリ制限のきついレンタルサーバーでもCPANモジュールが楽にインストールできる

| cpanminusを使うとメモリ制限のきついレンタルサーバーでもCPANモジュールが楽にインストールできる - otsune's SnakeOil  を含むブックマーク はてなブックマーク - cpanminusを使うとメモリ制限のきついレンタルサーバーでもCPANモジュールが楽にインストールできる - otsune's SnakeOil  cpanminusを使うとメモリ制限のきついレンタルサーバーでもCPANモジュールが楽にインストールできる - otsune's SnakeOil  のブックマークコメント

個人サイトで借りてる貸しサーバーはシェルが使えるんだけどroot権限が無く各種メモリの制限も強い。で、CPANコマンドを使うとlimit制限にひっかかってmoduleindexを伸張するところでOut of memoryエラーが出て落っこちちゃうという状態なんだけど。

今までは仕方がないからtar.gzでモジュールソースをもってきてperl Makefile.PL && make && make installと古典的な手段で入れていた。

しかし miyagawa's cpanminus at master - GitHub を使うことでcpan使わずに楽にインストールできるようになった。

tcshシェル使っているんなら

~/.cshrc に

setenv MODULEBUILDRC "${HOME}/perl5/.modulebuildrc"
setenv PERL_MM_OPT "INSTALL_BASE=${HOME}/perl5"
setenv PERL5LIB "${HOME}/perl5/lib/perl5:${HOME}/perl5/lib/perl5/i386-freebsd-64int:$PERL5LIB"
setenv PATH "${HOME}/perl5/bin:$PATH"

を追記して、source ~/.cshrcしておく。

i386-freebsd-64intの部分はサーバーによって変わるので、自分が使っているサーバーで

perl -MConfig -e 'print $Config{archname}'

を実行して確認してください。

~/perl5/.modulebuildrc は

install  --install_base  /home/USER_ACCOUNT_ID/perl5

USER_ACCOUNT_IDを適切に修正して書く。

んでcpanmをダウンロードして~/bin以下などに設置する。(rehashも適当に)

あとは cpanm モジュール名 でインストールできる。

ちなみに上記の設定はlocal::libで作られる環境変数と全く同じ。