一般的なMacOSX環境、およびLinux環境における、ModernなPerlの開発環境の構築方法についてまとめてみます。
なお、このページについては随時最新の状態に保っていく予定です。
記述の古い箇所を発見された方は、コメントやTwitter( @perl_entrance )などでお知らせいただけると助かります。
下準備
コンパイラなどをまずインストール。
Perl本体やCPANモジュールなどをインストールする際に必要になります。
- MacOSXなら、XcodeをAppStoreからインストールする。
- Xcodeを起動して、メニューから「Xcode」→「Preferences…」として、「Downloads」タブをクリック。「Components」にある「Command Line Tools」が「Installed」になっているかを確認する。なっていなければ「Install」しておく。
- debian なら、「apt-get build-dep perl」する。
- ubuntuならば特に必要ありません。
perlbrewをインストール
perlberwをインストールします。(2013年1月7日時点で最新版は 0.58 です)
perlbrewは、Perlをユーザ領域にインストールしたり、使用するPerlを変更できるソフトウェアです。
ユーザ領域にPerlをインストールすることで、OSのアップデートに左右されずに開発環境を維持できます。
また、開発版のPerlと安定版のPerlを切り替えて利用することが容易になります。
インストール方法
シェル(Terminalなど)を起動し、上から順にうまくいく方法をお試しください。
なお、行頭の$
は、ターミナルで入力するという意味を示しているもので、実際の入力は不要です。
画面に「Happy brewing!」という出力が出ていたら成功です。 perlbrewの設定へ進んでください。
インストール方法その1
$ curl -kL http://install.perlbrew.pl | bash
インストール方法その2
$ wget --no-check-certificate -O - http://install.perlbrew.pl | bash
インストール方法その3
$ sudo cpan App::perlbrew
$ perlbrew init
perlbrewの設定
perlbrewがインストールできたら、シェルの設定(~/.bashrc または ~/.bash_profileなど)を行います。
以下のコマンドを実行してください。
zshなどを利用している場合は、設定ファイルにsource ~/perl5/perlbrew/etc/bashrc
を追記すれば問題ありません。
MacOSXなど
$ echo >> ~/.bash_profile "source ~/perl5/perlbrew/etc/bashrc"
その他のOS
$ echo >> ~/.bashrc "source ~/perl5/perlbrew/etc/bashrc"
インストールの確認
ここまで来たら、設定を読み込むため、以下のコマンドを実行してください。(または、一度シェルを再起動させてください。)
$ source ~/.bashrc
以下のコマンドを実行してperlbrewのバージョンが表示されれば、インストールは完了です。
$ perlbrew --version
Perlをインストール
Perl本体をインストールします。(2013年1月7日時点で最新の安定版は 5.16.2 です)
perlbrewの機能を利用して簡単にインストールが可能です。
以下のコマンドを実行してください。(ほとんどの場合、インターネットに接続している必要があります。)
$ perlbrew install perl-5.16.2
インストールには時間がかかります。気長にお待ちください。
画面に以下のような出力が出ていれば成功です。
perlbrew switch perl-5.16.2
逆に、画面に以下のような出力が出ていたら失敗です。
perlbrew --force install perl-5.16.2
画面に他の情報が出ていれば、それに従います。(例えばperlbrew install-patchperl
と出ている場合は、そのコマンドを実行します)
ハマりパターンその1
下準備が不足している場合があります。
tail ~/perl5/perlbrew/build.log
を実行して、make: command not found
のようなことが書いてあれば下準備が不足していますので、今一度環境を確認してください。
ハマりパターンその2
zshなどを使っていて、いろいろな設定をしている場合、GREP_OPTIONS
の設定でハマっている場合があります。
$GREP_OPTIONSが原因でperlのビルドが失敗した件 - masasuzuの技術メモ
この場合は一時的に無効にすることでインストールできる場合があります。
% GREP_OPTIONS=""
% perlbrew install perl-5.16.2
どうしてもわからない場合
オススメではありませんが、どうしてもわからない場合は以下のコマンドを実行して強制的にインストールする方法もあります。(それでもインストール出来ない場合もあります。)
$ perlbrew --force --notest install perl-5.16.2
インストールの確認
以下のコマンドを実行してインストール時に指定したバージョンが表示されれば、インストールは完了です。
$ perlbrew list
インストールしたPerlを利用する
switchコマンドで、通常利用するPerlを切り替えることができます。
例えば、以下のコマンドを実行することで、先程インストールしたPerlを利用できます。
$ perlbrew switch perl-5.16.2
$ perl -V
とすると現在利用しているPerlについて詳しい情報が出力されます。
スクリプトとして実行する場合
切り替えたPerlをスクリプトから利用したい場合、スクリプトファイルの1行目は以下のようにしておきます。
#!/usr/bin/env perl
以下のように書いているとシステムのPerlを利用することになりますので、ご注意ください。
#!/usr/bin/perl
または、
#!/usr/local/bin/perl
CGIとして実行する場合
ウェブサーバ等でCGIとして利用する場合は、Perl本体を直接指定する必要がありますので、ご注意ください。
例えば以下のように指定します。
#!/virtual/username/perl5/perlbrew/perls/perl-5.16.2/bin/perl
Perl本体は以下のようにして探すことができます。
$ which perl
cpanmをインストール
cpanmをインストールします。(2013年1月7日時点で最新版は 1.5019 です)
cpanmは、CPANモジュールをインストールする時に使います。
cpanmのインストールは、perlbrewの機能を利用して簡単に可能です。以下のコマンドを実行してください。
$ perlbrew install-cpanm
画面に「cpanm is installed」という出力が出ていたら成功です。
インストールの確認
以下のコマンドを実行してcpanmのバージョンが表示されれば、インストールは完了です。
$ cpanm --version
perlbrewを使う際に気をつけること
perlbrewでPerlを切り替えて利用する場合、インストールされているCPANモジュールはPerlのバージョンごとに管理されています。
新しくPerlをインストールした場合、これまでインストールしているCPANモジュールは引き継がれませんので、その都度インストールし直す必要があります。
cpanmについては、perlbrewの機能を使ってインストールしておけばいつでも使えますので、慣れるまではperlbrewの機能でインストールすることをお勧めします。