私はPerlbrewを使ってPerlをインストールしています。ビルドスクリプトでは、ターゲットフォルダー内のすべての依存関係をコピーし、tarボールを作成しています。このターゲットフォルダには、インストールされているbinフォルダもあります。しかし、これはperlの正確なパス位置を取得していることを証明しています。
このタールボールをコピーして、別のボックスでアンタールします。このターゲットフォルダービンを使用する別のビルドスクリプトは、パスと実行中の証明です。Proveには正確なパスの場所があり、このパスはこのボックスでは使用できないため、例外がスローされます。
#!/var/local/maria/hudson/workspace/pigeon-environment/perlbrew/perls/perl-5.14.2/bin/perl
eval 'exec /var/local/maria/hudson/workspace/pigeon-environment/perlbrew/perls/perl-5.14.2/bin/perl -S $0 ${1+"$@"}'
ただし、このパスは次のようになります。
#!$PWD/target/bin/perl
誰かが相対的なパスで証明を作成してください。