Mac OSXでPerlの環境を整える。- CPANモジュールのインストールまで
まずはMacportsのインストール
PerlのインストールにもMacportsを使うと/opt/local以下にインストールしてくれるのでオススメします。
MacのデフォルトのPerlのインストールディレクトリを汚さないですし、アンインストールやアップグレードなどのバージョン管理もできるパッケージ管理ツールです。MacPortsとは?
事前にXcodeTools、X11をMacに付属しているインストールDiscからインストールが必要です。MacPorts(旧名DarwinPorts)というのはパッケージ管理ツールで、UNIX向けのオープンソースソフトウェアをダウンロード、configure、make、インストール、そのパッケージ使用するのに必要な他のパッケージも一緒にインストールなど面倒な作業をすべて代わりにやってくれる便利なソフト。
source: Macports – Macの手書き説明書
MacPortsをインストール
http://distfiles.macports.org/MacPorts/から最新版のLeopardまたはSnowLeopard版のdmgをダウンロードしインストール。
シェルでmacportsのパスを通す(環境変数を追加)
~/.bashrcもしくは~/.bash_profileにMacPortsのパスを通すための環境変数を追加します。
export PATH=/opt/local/bin:/opt/local/sbin/:$PATH export MANPATH=/opt/local/man:$MANPATH
sourceコマンドで実行します。
$ source ~/.bashrcMacPorts自身のアップデートとportsのデータベース(Portfile/patch)を更新
$ sudo port -d selfupdate $ sudo port -d sync
Perlのインストール
macportsでPerlのついでにgitとかsubversionとかvimなど便利なツールもインストールしておくと後々管理しやすくて楽です。なにをインストールすればいいか悩んだらBeginning OS X 10.6/アプリ導入編 拾遺 – Beginning OS Xを見ればだいたいわかります。
$ sudo port install wget tree proctools git-core $ sudo port install subversion $ sudo port install nkf $ sudo port install perl5 $ sudo port install vim $ sudo port install emacs
Perlの実行パスの確認
macports用にパスが通せて(環境変数が設定できる)、macportsでPerlが無事にインストールされたら早速Perlの実行パスを確認します。whichコマンドを使ってperlの実行パスを確認することができます。
$ which perl /opt/local/bin/perl
CPANシェルを呼び出す
cpanシェルを使うと豊富なライブラリ群のCPANモジュールを自由にインストールすることができます。ダウンロードし、展開し、make installや make testまで自動でしてくれます。
初期設定後は、以下のコマンドのどちらかを打つだけでCPANシェルを呼び出すことができます。
$ sudo cpan $ sudo perl -MCPAN -e shell
実行後、cpan>と表示されれば無事にCPANシェルが立ち上がっています。
これでCPANモジュールをインストールすることができます。$ sudo cpan Password: Terminal does not support AddHistory. cpan shell -- CPAN exploration and modules installation (v1.7602) ReadLine support available (try 'install Bundle::CPAN') cpan>
インストールディレクトリの確認 (必要であれば)
まずは、以下のシェルでインストールディレクトリを知る必要があります。perl -Vでも環境変数や細かいインストール時の情報が確認できます。左のパスから優先的にインストールされます。
$ perl -e 'print "@INC"' /opt/local/lib/perl5/5.8.8/darwin-2level /opt/local/lib/perl5/5.8.8 /opt/local/lib/perl5/site_perl/5.8.8/darwin-2level /opt/local/lib/perl5/site_perl/5.8.8 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl/5.8.8/darwin-2level /opt/local/lib/perl5/vendor_perl/5.8.8 /opt/local/lib/perl5/vendor_perl
もしくはperl -V オプションで詳細がごそっと確認できます。
$ perl -V
Summary of my perl5 (revision 5 version 8 subversion 9) configuration:
Platform:
osname=darwin, osvers=10.3.2, archname=darwin-2level
(以下省略)
CPANモジュールのインストール
cpanシェルを実行した際に表示されている通り、 cpanシェルでinstall Bundle::CPANとコマンドを打ってみましょう。早速 Bundle::CPANモジュールがインストールされ、readlineという上カーソルキーを押すとコマンドの履歴が呼び出せるようになります。
cpan> install モジュール名
ここまででだいたいCPANモジュールのインストールは完了です!
cpan>シェルを終了したい場合
cpan> quit cpan> q
のいずれかで終了できます。
よくある質問
CPANモジュールがインストールされたかどうか確認したい
cpanモジュールがインストールされたどうかは、cpanシェル時の “i /モジュールを名/” コマンドか、”perldoc [モジュール名] “のコマンドで調べることが可能です。
cpan> i /モジュール名/
例:
cpan> i /Web::Scraper/ Module Web::Scraper (M/MI/MIYAGAWA/Web-Scraper-0.24.tar.gz) Module Web::Scraper::Config (D/DM/DMAKI/Web-Scraper-Config-0.01.tar.gz) Module Web::Scraper::Filter (M/MI/MIYAGAWA/Web-Scraper-0.24.tar.gz) 3 items found
cpanモジュールがインストールされたパスを知るには
以下のコマンドでできます。$ perldoc -ml モジュール名
手動でインストールを行いたい場合 (CPANシェルをあえて使わない場合)
初期の環境のままではCPANモジュールのmakeができないので、make install時にエラーになります。Mac OSX Leopard付属のインストールディスクNo.2から XcodeTools > XcodeTools.mpkg をダブルクリックしてインストール。
先ほどの@INCパスにあるディレクトリ内へCPANモジュールをコピーし、makeします。
例:
$ cp -r /ダウンロードディレクトリ /opt/local/lib/perl5/5.8.8 $ sudo perl Makefile.pm $ sudo make install $ sudo make test
モジュールを入手してインストールする方法 – Perlの小技が非常に参考になりました。
※cpanシェルがエラーになって起動できない場合の対処法
CPANシェルのプロセスを立ち上げたまま、別のCPANシェルを立ち上げようとすると下記のようなエラーメッセージがでてきます。Terminal does not support AddHistory. CPAN.pm panic: Lockfile /var/root/.cpan/.lock reports other host EM60-254-232-36.pool.e-mobile.ne.jp and other process 14521. Cannot proceed.
これは/var/root/.cpan/.lockにロックファイルが残っている為に起きているエラーです。
そんな時は以下のsudo権限でrmコマンドを使いロックファイルを削除してください。$ sudo rm /var/root/.cpan/.lock
FireFoxにCPANモジュール検索バーの追加
CPANを素早く検索できるよう、FireFoxの検索バーにCPANモジュール検索を追加します。私はCPAN – Modulesだけを登録しています。 以下のリンクからできます。
http://mycroft.mozdev.org/download.html?name=CPAN&sherlock=yes&opensearch=yes&submitform=Search
その他Perl関連で参考になったサイト
- よねだや : Mac OS X Leopardでのターミナル環境設定備忘録 – livedoor Blog(ブログ)
- 妄想癖 MacでPerl (OSX)
- mac perl 5.10 インストール – 教えて!goo
- Peace Pipe: Mac 環境構築 その8 – chalow (というか perl モジュール) のインストール [mac]
- 第2回 なぜMacなのか(後編) ~ApacheでCGIを動かすまで|gihyo.jp
- PCに昨日初めてさわった人でもできるくらい超々簡単vimインストール 続き (Mac OSX Tiger、vim7) ― 名無しのvim使い
その他ご意見や情報が足りない、間違ってる等ツッコミがありましたらacotie.acotie[at]gmail.comまでメールを頂けると嬉しいです。

