web-dev-qa-db-ja.com

スクリプトはPerlモジュールを見つけることができませんが、モジュールはローカルサブディレクトリに存在します

Rasbian strecth 4.9.59-v7 +を実行していて、次のソフトウェアを実行しようとしています https://github.com/weaknetlabs/warcarrier これは本当にきれいに見えます!

スクリプトを実行しようとすると、次のエラーコードが表示されます。

@INCでlib/GMAPS.pmが見つかりません(lib :: GMAPSモジュールをインストールする必要がある場合があります)(@ INCに含まれるもの:/ etc/Perl /usr/local/lib/arm-linux-gnueabihf/Perl/5.24 .1 /usr/local/share/Perl/5.24.1 /usr/lib/arm-linux-gnueabihf/Perl5/5.24/usr/share/Perl5 /usr/lib/arm-linux-gnueabihf/Perl/5.24/usr /share/Perl/5.24/usr/local/lib/site_Perl/usr/lib/arm-linux-gnueabihf/Perl-base)at ./warcarrier line 29

私の知る限り、GMAPS.pmcpan経由でインストールできません。ただし、GMAPS.pm(他のいくつかのモジュールを含む)は、warcarrierソフトウェアのlibという名前のサブディレクトリにあります。これまで私は以下を試しました:

GMAPS.pmモジュールを上記のフォルダーの1つにコピーしました(/etc/Perl

Perl -I /home/pi/warcarrier/libでスクリプトを実行しようとしました

use lib /home/pi/warcarrier/lib;を追加してスクリプトを変更しました(まだGMAP.pmが欠落しているエラーメッセージが表示されますが、@incには/home/pi/warcarrier/lib directoryが含まれるようになりました。

@INCでlib/GMAPS.pmが見つかりません(lib :: GMAPSモジュールをインストールする必要がある場合があります)(@ INCに含まれるもの:/ home/pi/warcarrier/lib/etc/Perl/usr/local/lib/arm -linux-gnueabihf/Perl/5.24.1 /usr/local/share/Perl/5.24.1 /usr/lib/arm-linux-gnueabihf/Perl5/5.24/usr/share/Perl5/usr/lib/arm-linux -gnueabihf/Perl/5.24 /usr/share/Perl/5.24/usr/local/lib/site_Perl/usr/lib/arm-linux-gnueabihf/Perl-base)./ warcarrier line 30

/home/pi/warcarrier/lib@incexport Perl5LIB=/home/pi/warcarrier/libでインポートしようとしました。エラーメッセージは、スクリプトの実行時に/home/pi/warcarrier/lib@incを検索したパスに、パスGMAPS.pmが含まれていないことを示しています。

私はオプションを使い果たしました、どんな助けでも大歓迎です!敬具!

1
Noah Smith

モジュールは/home/pi/warcarrier/libに存在し、スクリプトはそれをlib/GMAPS.pmとしてロードしようとします。

これは、-I /home/pi/warcarrier/libを使用すると、Perlが/home/pi/warcarrier/lib/lib/GMAPS.pmを検索することを意味します。

代わりに-I /home/pi/warcarrierを使用してください。

2
Kusalananda