私のアプリでは、すべてのモジュールを1つのディレクトリに入れました。それをlibx
と呼んでいます。 アプリをどこに配備するかはユーザーが選択するので、lib
パスをハードコードしたくありません。"libを使用"しないのはなぜですか?
myapp.pl
の先頭に、私は次のコード行を書いていました。
#! /usr/bin/perl -w
use strict;
my $curr_dir = $0;
my $curr_lib = $curr_dir;
$curr_lib =~ s/myapp\.pl/libx/;
use $curr_lib ;
私が期待しているものを得るのではなく、エラーがコンパイルされています。
私のコードで何が問題になっていますか? use lib
を使用しているときにlibパスをハードコードしたくない場合、どうすればよいですか?
申し訳ありませんが、私はアプリが展開されるとき、myapp.pl
とlibx
が同じディレクトリにあることを言及するのを忘れてしまいました。
ユーザーがアプリを起動する方法を正確に教えていただければ役に立ちます。彼らは単に 'myapp'と入力しますか?pl 'であり、$ PATHを設定してmyapp.plがどのディレクトリにあっても見つかるようにするのは、彼らの責任ですか? –