#desc Top ; -*- mode: Muse; coding: euc-japan-unix -*- #title ユーザ領域に CPAN モジュールを install する. ****** $Lastupdate: 2008/05/20 20:17:37 $ * 始めに [[http://www.cpan.org/][CPAN]] は Comprehensive Perl Archive Network の略で, Perl の様々なモジュールを簡単に install するための system. Debian には dh-make-perl というパッケージがあって, cpan モジュールから deb パッケージを作成できたりする. けれども cpan モジュールの依存関係を 解決してパッケージを作成する訳ではないので, 『○○という cpan モジュールを使用したいのに, dh-make-perl でパッケージ化を試みるも, 依存関係を解決できずにパッケージが作成できない』なんて事もしばしば. この辺りを解決するために, [[http://www.dzeta.jp/tech/index.cgi?dh-make-perl-all%A4%CE%BB%C5%CD%CD%A4%C8%BC%C2%C1%F5][dh-make-perl-allの仕様と実装]] にあるように, dh-make-perl-all を作成している方もいらっしゃる. dh-make-perl-all はかなり便利なんで, 管理者権限がある場合にはガシガシ使うと良いと思う. ここでは cpan モジュールを使用したいけど管理者権限が無い, なんて場合に, ユーザ領域に cpan モジュールを install するための作業をメモしておく. ** 初期設定 install 先は $HOME/lib/CPAN としておく. 場所が変な気がしてモヤモヤする けれど, $HOME 以下に置くディレクトリはあまり増やしたくないので. ディレクトリ作成 $ mkdir -p ~/lib/CPAN 初期設定ファイルの作成 $ echo no | cpan 設定ファイルは ~/.cpan/CPAN/MyConfig.pm この中の該当箇所を修正する. 'make_install_arg' => qq[SITEPREFIX=$ENV{HOME}/lib/CPAN], 'makepl_arg' => qq[INSTALLDIRS=site INSTALL_BASE=$ENV{HOME}/lib/CPAN LIB=$ENV{ HOME}/lib/CPAN/lib/perl5 PREFIX=$ENV{HOME}/lib/CPAN], 'mbuildpl_arg' => qq[./Build --install_base $ENV{HOME}/lib/CPAN], あと, urlist を適宜追加修正しておく. 次に PATH と PERL5LIB の修正. zsh を使っているので .zsh/.zshenv に # for perl(CPAN) if [ -d ${HOME}/lib/CPAN ]; then export PATH=${HOME}/lib/CPAN/bin:${PATH}: export PERL5LIB=${HOME}/lib/CPAN/lib/perl5:${HOME}/lib/CPAN/lib/perl5/site_perl export MANPATH=${HOME}/lib/CPAN/man:${MANPATH} fi なんて仕込んでおく. ** CPAN のアップデート $ cpan -i Bundle::CPAN 途中の質問は何も考えず全てリターンで.