Perlで@INCを修正する方法

Perlで@INCを修正する方法

サーバーがインターネットに接続されていないため、ソースからPerlをインストールしようとしていますが、「make install」を実行すると、次の場所で停止します。

Can't locate DWIM.pm in @INC (you may need to install the DWIM module) (@INC contains: lib dist/Exporter/lib .).
BEGIN failed--compilation aborted.

注:以前にDWIM Perlをインストールしました。

今私がするとき

[root@ctl perl-5.22.2]# perl -e "print \"@INC\""
/opt/dwimperl-linux-5.20.1-10-x86_64/perl/lib/site_perl/5.20.1/x86_64-linux /opt/dwimperl-linux-5.20.1-10-x86_64/perl/lib/site_perl/5.20.1 /opt/dwimperl-linux-5.20.1-10-x86_64/perl/lib/5.20.1/x86_64-linux /opt/dwimperl-linux-5.20.1-10-x86_64/perl/lib/5.20.1

DWIM ファイルは次の場所にあります。

[root@ctl perl-5.22.2]# find / -name DWIM.pm
/opt/dwimperl-linux-5.20.1-10-x86_64/perl/lib/site_perl/5.20.1/DWIM.pm

私が望むのは、DWIM.pmを見つけることができるようにPerlで@INCを変更する方法です。

答え1

PERL5LIB環境変数にそのパスを追加するだけです。

export PERL5LIB=/opt/dwimperl-linux-5.20.1-10-x86_64/perl/lib/site_perl/5.20.1

答え2

モジュールまたはライブラリを作成する必要がある場合は、次のソリューションを使用して@INCパスを変更します。

  1. @INCが確認したリンクを掲載します。 Ubuntuには/etc/perl.confがあります。次に、このディレクトリに自分のモジュールへのリンクを作成します。例:cd /etc/perl; ln -s /data/perl/Speak.pm ./

  2. または、PERL5LIB変数の内容を変更します。例: cd /data/perl;エクスポート PERL5LIB=。

  3. または、Perlプログラムに次の行を含めます。例:lib '/data/perl/'を使用する

これらすべての解決策は私にとって効果的でした。

関連情報