3

いくつかのPerlモジュールを非標準の場所にインストールしようとしています。それを呼び出しましょう/non/standard/location。使用しました

perl Makefile.PL PREFIX=/non/standard/location
make;make install

それらをインストールします。

モジュールを使用するスクリプトでは、次のように、Perlのバージョンを含む長いディレクトリパスを指定する必要があるようです。

#!/usr/local/bin/perl
use lib '/non/standard/location/lib/perl5/site_perl/5.8.9/';
use A::B;

use libそれほど長くなく冗長で、実際のバージョンのPerlが含まれていない、使用できるステートメントはありますか?バージョンがあれば、プログラムから戻って編集する必要はありません。 Perlのアップグレードされますか?

4

2 に答える 2

5

おそらくすべての質問に答えているわけではありませんが、local::libを知っていますか? システム perl で利用できる場合は、use local::lib. そうでない場合:

use lib glob '~/perl5/lib/perl5';
use local::lib;

Windows でどのように機能するかはわかりませんが、これはおそらく少し制約がありますが、私の目的には十分です。もちろん、スクリプトを実行する前に環境をセットアップできる場合 (など) .bashrc、正しいパスが既に に設定されているため、SetEnvのことは忘れて構いません。use lib globPERL5LIB

于 2010-06-18T03:43:41.407 に答える
0

現在、次の処方箋でインストールしましたが、これで問題が解決したようです。

perl Makefile.PL --no-manpages --skipdeps PREFIX=/non/system/location INSTALLSITELIB=/non/system/location/lib INSTALLSITEBIN=/non/system/location/bin INSTALLMAN1DIR=/non/system/location/man/man1 INSTALLMAN3DIR=/non/system/location/man/man3

これに対する建設的な批判を歓迎します。使いたいけど--no-manpagesとにかくINSTALLMAN1DIR必要なようです。

于 2010-06-18T03:55:21.553 に答える