さくらのレンタルサーバでroot権限無しにCPANを使えるようにする

この記事はちょっと古いかもしれません。

最近は cpanm でうまくやる方法があるのでそちらを探した方が得策かもしれません。

_

local::lib使わなくてもMyConfig.pmの設定を変えるだけで大丈夫。

プロセス

SSHでログインして次のディレクトリを作成する
$HOME/local/lib/perl5
$HOME/local/lib/perl5/site_perl
cpanを起動

自動的に設定することでかなり楽ができる。
手動設定でもCPANFTPミラー以外はデフォルトでOK。

~.cshrc にPERL5LIBを追記する
setenv PERL5LIB $HOME/local/lib/perl5:$HOME/local/lib/perl5/site_perl
~.cpan/CPAN/MyConfig.pm を書き換える

※ユーザがhogeの場合。ユーザ名は適宜書き換えてください

$CPAN::Config = {
  'applypatch' => q[],
  'auto_commit' => q[0],
  'build_cache' => q[100],
  'build_dir' => q[/home/hoge/.cpan/build],
  'build_dir_reuse' => q[0],
  'build_requires_install_policy' => q[ask/yes],
  'bzip2' => q[/usr/bin/bzip2],
  'cache_metadata' => q[1],
  'check_sigs' => q[0],
  'colorize_output' => q[0],
  'commandnumber_in_prompt' => q[1],
  'connect_to_internet_ok' => q[1],
  'cpan_home' => q[/home/hoge/.cpan],
  'curl' => q[/usr/local/bin/curl],
  'ftp' => q[/usr/bin/ftp],
  'ftp_passive' => q[1],
  'ftp_proxy' => q[],
  'getcwd' => q[cwd],
  'gpg' => q[/usr/local/bin/gpg],
  'gzip' => q[/usr/bin/gzip],
  'halt_on_failure' => q[0],
  'histfile' => q[/home/hoge/.cpan/histfile],
  'histsize' => q[100],
  'http_proxy' => q[],
  'inactivity_timeout' => q[0],
  'index_expire' => q[1],
  'inhibit_startup_message' => q[0],
  'keep_source_where' => q[/home/hoge/.cpan/sources],
  'load_module_verbosity' => q[v],
  'lynx' => q[/usr/local/bin/lynx],
  'make' => q[/usr/bin/make],
  'make_arg' => q[],
  'make_install_arg' => q[],
  'make_install_make_command' => q[],
  'makepl_arg' => q[INSTALLDIRS=site INSTALL_BASE=/home/hoge/local LIB=/home/hoge/local/lib/perl5],
  'mbuild_arg' => q[],
  'mbuild_install_arg' => q[],
  'mbuild_install_build_command' => q[./Build],
  'mbuildpl_arg' => q[./Build --install_base /home/hoge/local],
  'ncftp' => q[],
  'ncftpget' => q[],
  'no_proxy' => q[],
  'pager' => q[more],
  'patch' => q[/usr/bin/patch],
  'perl5lib_verbosity' => q[v],
  'prefer_installer' => q[MB],
  'prefs_dir' => q[/home/hoge/.cpan/prefs],
  'prerequisites_policy' => q[ask],
  'scan_cache' => q[atstart],
  'shell' => q[/bin/csh],
  'show_unparsable_versions' => q[0],
  'show_upload_date' => q[0],
  'show_zero_versions' => q[0],
  'tar' => q[/usr/bin/tar],
  'tar_verbosity' => q[v],
  'term_is_latin' => q[1],
  'term_ornaments' => q[1],
  'test_report' => q[0],
  'trust_test_report_history' => q[0],
  'unzip' => q[/usr/local/bin/unzip],
  'urllist' => [q[ftp://ftp.riken.jp/lang/CPAN/]],
  'use_sqlite' => q[0],
  'wget' => q[/usr/local/bin/wget],
  'yaml_load_code' => q[0],
  'yaml_module' => q[YAML],
};
1;
__END__
cpanを起動
  1. o confで設定を確認
  2. 設定がOKそうなら、install Mooseあたりで確認
  3. cpanを終了し、Mooseがインストールされたかを確認する
perl -MMoose -e 'print $Moose::VERSION, $/'

バージョンが出力されればインストールは成功。

以上。