Perlゼミ(サンプルコードPerl入門)

2010年05月25日

lib - モジュールの検索パスを追加

  1. Perl
  2. モジュール
  3. here

libモジュールを使用すると、モジュールの検索パスを追加することができます。

# モジュールの検索パスを追加
use lib 'home/user/local/lib';

Perlにおいては、モジュールの検索パスの一覧は特殊変数「@INC」に格納されていますが、libモジュールはコンパイル時に@INCの先頭に検索パスを追加します。

# libモジュールは@INCの先頭にパスを追加する
BEGIN {
  unshift @INC, '/home/user/local/lib';
}

libモジュールはFindBinモジュールと組み合わせて利用されることが多いです。スクリプトの存在するディレクトリのlibというディレクトリをモジュールの検索パスに追加するサンプルです。

# スクリプトの存在するディレクトリのlibディレクトリを検索パスに追加
use FindBin;
use lib "$FindBin::Bin/lib";
libモジュールに関するFAQ

Q. libモジュール以外の方法でモジュールの検索パスを追加する方法はありますか。

A. はい。環境変数PERL5LIBを設定する方法とスクリプトの起動時に -I オプションを指定する方法があります。libモジュールは最も柔軟性がありますが、スクリプトと密に結合してしまい移植性に欠けます。状況に応じてどの方法が最善かを考えましょう。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証