本連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはacotieこと横山彰子さんで、
今どきのCPAN環境構築術
Perlの最大の特徴はCPANにあります。CPANは
登録モジュールの検索やドキュメントの閲覧サービスも提供されているため、
しかしCPANには、
cpanコマンド
cpanコマンドは、
それではさっそく、
cpanコマンドの確認
cpan -v
でCPAN.
$ cpan -v
/opt/local/bin/cpan script version 1.9, CPAN.pm version
1.9402
cpan -h
でコマンドのヘルプを確認できます。
$ cpan -h
cpanコマンドの使い方
では、
cpanコマンドを実行する方法にはいくつかあり、
$ sudo perl -MCPAN -e shell
$ sudo cpan
初回実行時には初期設定が必要ですが、
次のようにcpanシェルの対話モードが表示されたら準備完了です。
cpan>
モジュールのインストールには、install モジュール名
と入力します。これでダウンロード、
cpan> install モジュール名
CPANモジュールのインストールディレクトリは、
$ perl -e 'print "@INC"'
/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /
usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl
cpanmコマンド
cpanm
cpanmコマンドのインストール
cpanmを一般ユーザ領域にインストールする場合は、
$ cd ~/bin
$ curl -O https://github.com/miyagawa/cpanminus/raw/master/cpanm
$ chmod +x cpanm
cpanmコマンドの使い方
cpanmコマンドを使ったCPANモジュールのインストールは、cpanm モジュール名
で行います。
$ cpanm Acme::Acotie
--> Working on Acme::Acotie
Fetching http://search.cpan.org/CPAN/authors/id/Y/YA/
YAPPO/Acme-Acotie-0.02.tar.gz ... OK
Configuring Acme-Acotie-0.02 ... OK
Building and testing Acme-Acotie-0.02 ... OK
Successfully reinstalled Acme-Acotie-0.02
新たにCPANの環境を移行する
新しくCPAN環境を作りたい場合や、
$ cpanm ExtUtils::Installed
$ perl -MExtUtils::Installed -e 'print "$_\n" for ExtUtils::Installed->new->modules' > modules.txt
これで、
$ cpanm < modules.txt
cpanmの細かいオプションやドキュメントはcpanm -h
というヘルプコマンドに載っていますので参考にしてください。
環境変数の設定
cpanmをデフォルトのまま使うと、
$ tree ~/perl5/lib/perl5/
/Users/username/perl5/lib/perl5/
|-- Acme
| `-- Monta.pm
`-- darwin-2level
|-- auto
| `-- Acme
| `-- Monta
`-- perllocal.pod
perlコマンドやperldocコマンドを実行した際にこのディレクトリが認識されるように、export PERL5LIB=$HOME/
を追記したあと、
$ source ~/.bashrc
この環境変数PERL5LIBは、
うまく認識されるか試してみましょう。
$ perldoc -l Acme::Monta
/Users/username/perl5/lib/perl5/Acme/Monta.pm
cpan-outdatedを使い全モジュールのアップデートを行う
プロジェクトの開発段階で、
$ cpan-outdated | cpanm
perlbrewコマンド
perlbrew
perlbrewコマンドのインストール
次のようにしてperlbrewをインストールします。
$ curl -LO http://xrl.us/perlbrew
$ perl perlbrew install
$ rm -f ./perlbrew
次のコマンドでperlbrew自体を初期化します。
$ $HOME/perl5/perlbrew/bin/perlbrew init
設定ファイルに環境変数を追加します。
$ echo 'source $HOME/perl5/perlbrew/etc/bashrc' >> ~/.bashrc
$ source ~/.bashrc
perlbrewコマンドの使い方
perlbrewでは、
$ perlbrew install perl-5.12.1
Perlのバージョンを切り替えるにはperlbrew switch
を使います。次の例ではバージョン5.
$ perlbrew switch perl-5.12.1
$ perl -v
This is perl 5, version 12, subversion 1 (v5.12.1) built
for darwin-2level
次のコマンドで、
$ perlbrew list
* perl-5.12.1
perl-5.13.7
/opt/local/bin/perl (5.8.9)
/usr/bin/perl (5.10.0)
複数のバージョンを切り替えて使うために、#!
から始まる1行目を、
#!/usr/bin/env perl
環境変数の設定
perlbrewでインストールしたPerlを使用した場合、export PERLBREW_
を追加し、source ~/.bashrc
を実行したあと、perlbrew init
コマンドを実行してください。