0

システムの Perl のバージョンがある CPAN からモジュールをインストールしないのが最善であると聞いたことがあります。コマンドラインを使用してモジュールをインストールする方法は知っていますが、CPAN をシステムのコア Perl から分離しておく方法があるかどうか疑問に思っていました。

するべきか:

ソースをダウンロードして、これらのモジュール専用のディレクトリを作成しますか?

他に成功したアイデアや実装を持っている人はいますか?

4

2 に答える 2

0

CPAN は常にコアから分離されています –/usr/lib/perl5サブディレクトリcore_perlvendor_perl(ディストリビューションによってパッケージ化された CPAN モジュール) およびsite_perl(ローカルにインストールされたモジュール) があることに注意してください。

ExtUtils::MakeMakerModule::Buildは両方とも、デフォルトですべてを「site」ディレクトリにインストールします。cpanこれは、またはcpanmコマンドを使用してインストールするすべてのものにも当てはまります。Linux ディストリビューションのパッケージを使用する場合、パッケージは「vendor」パスに移動します。

次を使用して、別のインストール場所を指定できます (たとえば、すべての CPAN モジュールを自宅に直接保持する場合)。

dir=~/perl5

export PERL5LIB="${dir}"
export PERL_MM_OPT="INSTALL_BASE='${dir}'"
export PERL_MB_OPT="--install-base '${dir}'"
于 2012-12-18T07:23:36.357 に答える
0

システム ディレクトリにインストールする場合のリスクは、システムに関連するすべての Perl スクリプトがそれらのモジュールを使用することです。モジュールの 1 つが、システムが使用するモジュールの新しい互換性のないバージョンである場合、満足することはできません。

プライベート ディレクトリにインストールするための推奨される方法は、local::lib を使用することです。ブートストラップ手法を参照してください: https://metacpan.org/module/local::lib

local::lib をセットアップすると、標準の CPAN クライアントのいずれかを使用してモジュールをインストールできます。

于 2012-12-24T06:14:35.153 に答える