* local::libでCPAN環境を使い分ける [#r53fa3b5]
** local::libのダウンロード・インストール [#eba9fc48]
ここでは$HOME/tmp/cpanにディレクトリーツリーを作る事にする。
wget http://search.cpan.org/CPAN/authors/id/A/AP/APEIRON/local-lib-1.008004.tar.gz
tar zxvf local-lib-1.008004.tar.gz
cd local-lib-1.008004
perl Makefile.PL --bootstrap=$HOME/tmp/cpan
make
make test
make install
** local::libで指定したCPANディレクトリツリー以下にCPANモジュールをインストールする [#x424b034]
*** cpanmコマンドでモジュールインストールする場合 [#q765f434]
cpanm --local-lib=$HOME/tmp/cpan Time::Piece
*** cpanコマンドでモジュールをインストールする場合 [#m8728b3f]
以下のコマンドを実行し、
perl -I$HOME/tmp/cpan/lib/perl5 -Mlocal::lib=$HOME/tmp/cpan
以下の出力内容を.bashrcに登録する等して環境変数を整備する。
export PERL_LOCAL_LIB_ROOT="/home/taro/tmp/cpan";
export PERL_MB_OPT="--install_base /home/taro/tmp/cpan";
export PERL_MM_OPT="INSTALL_BASE=/home/taro/tmp/cpan";
export PERL5LIB="/home/taro/tmp/cpan/lib/perl5/darwin-2level:/home/taro/tmp/cpan/lib/perl5";
export PATH="/home/taro/tmp/cpan/bin:$PATH";
** local::libで指定したCPANディレクトリツリー以下にCPANモジュールを使用する [#xd05ab0e]
#!/usr/bin/perl
use strict;
use warnings;
use lib '/home/taro/tmp/cpan/lib/perl5/'; # (1)
use local::lib '/home/taro/tmp/cpan'; # (2)
use local::lib '/home/taro/tmp/cpan'; # (2)
use Time::Piece;
方法は3つ。
- (1)のようにlibプラグラマでライブラリサーチパスを直接指定する。
- local::libを標準CPANディレクトリーツリーにインストールしているのなら、(2)のようにlocal::libプラグマで指定する。
- Perlの実行ユーザの環境変数PERL5LIBをPERL5LIB="/home/taro/tmp/cpan/lib/perl5/darwin-2level:/home/taro/tmp/cpan/lib/perl5"のように指定する。