Web ホストに 2 つの Perl モジュールをインストールする必要があります。それらを A::B と X::Y と呼びましょう。X::Y は A::B に依存します (実行するには A::B が必要です)。どちらもModule::Install を使用します。を使用して A::B をシステム以外の場所に正常にインストールしました
perl Makefile.PL PREFIX=/non/system/location
make; make test; make install
今度は X::Y をインストールしたいので、同じことを試します
perl Makefile.PL PREFIX=/non/system/location
出力は
$ perl Makefile.PL PREFIX=/non/system/location/
Cannot determine perl version info from lib/X/Y.pm
*** Module::AutoInstall version 1.03
*** Checking for Perl dependencies...
[Core Features]
- Test::More ...loaded. (0.94)
- ExtUtils::MakeMaker ...loaded. (6.54 >= 6.11)
- File::ShareDir ...loaded. (1.00)
- A::B ...missing.
==> Auto-install the 1 mandatory module(s) from CPAN? [y]
システムに A::B がインストールされているのに見つからないようで、CPAN からモジュールを自動インストールしようとすると、システム ディレクトリに書き込もうとします (PREFIX を無視します)。コマンド ラインで や after などのPERL_LIB
変数を使用してみましたが、何も機能していないようです。LIB
PREFIX=...
私はうまくやることはできますがmake
、この問題のためmake install
にできません。make test
助言がありますか?
http://servers.digitaldaze.com/extensions/perl/modules.htmlで、環境変数 PERL5LIB を使用するためのアドバイスを見つけましたが、これもうまくいかないようです:
export PERL5LIB=/non/system/location/lib/perl5/
問題を解決しませんでした。