65

/usr/libホストされた Linux マシンを使用しているため、ディレクトリに書き込む権限がありません。

通常の方法で CPAN モジュールをインストールしようとすると、次のようになります。

perl Makefile.PL
make test
make install

そのモジュールはblib/lib/フォルダーに抽出されます。私は保持use blib/lib/ModuleNameしましたが、それでもコンパイラはモジュールが見つからないと言っています。.pm ファイルをローカル ディレクトリにコピーして保持しようとしました require ModuleNameが、それでもエラーが発生します。

モジュールを他のディレクトリにインストールして使用するにはどうすればよいですか?

4

5 に答える 5

45

同様の問題があり、local::lib をインストールすることさえできませんでした

.pl ファイルに関連する場所にモジュールをインストールするインストーラーを作成しました

インストールは次のようになります。

perl Makefile.PL PREFIX=./modulos
make
make install

次に、./ にあるモジュールを必要とする .pl ファイルで

use lib qw(./modulos/share/perl/5.8.8/); # You may need to change this path
use module::name;

残りのファイル (makefile.pl、module.pm など) は変更する必要はありません。

.pl ファイルを呼び出すことができます

perl file.pl
于 2009-02-12T10:57:48.977 に答える
19

local::libが役に立ちます。「make install」(および「Build install」) を書き込み可能なディレクトリにインストールするよう説得し、perlそれらのモジュールにアクセスする方法を教えてくれます。

一般に、blib/ ディレクトリにあるモジュールを使用する場合、スクリプトを通常どのように呼び出すかを指定する必要perl -Mblib ...があります。...

于 2009-02-12T10:21:03.760 に答える
3

Makefile.PL ベースのディストリビューションでは、Makefile を生成するときに INSTALL_BASE オプションを使用します。

perl Makefile.PL INSTALL_BASE=/mydir/perl
于 2014-07-19T08:34:19.867 に答える
3

Perlbrewを強くお勧めします。複数のバージョンの Perl を実行したり、パッケージをインストールしたり、必要に応じて Perl の内部をハッキングしたり、すべての通常のユーザー権限を使用したりできます。

于 2013-08-31T12:10:43.733 に答える