PerlIO::eol パッケージをインストールせずにプロジェクトの一部として追加しようとしています。これにより、すべての依存関係を各マシンに再インストールすることなく、スクリプトと共にパッケージ化できます。PerlIO::eolの構造と重要なファイルの場所がわかり ません
2 に答える
3
サブディレクトリを作成し、inc
そこに展開された PerlIO-eol ディストリビューションを移動します。次に、プロジェクトで次のようなものを使用しますBuild.PL
。
use Config qw(%config);
use Module::Build qw();
my $build = Module::Build->subclass(code => q(sub ACTION_inc2blib {
my ($self) = @_;
chdir 'inc/PerlIO-eol';
system $^X, 'Makefile.PL';
system $Config{make};
chdir '../..';
}))->new(
module_name => 'Foo::Bar',
license => 'restrictive',
dist_abstract => 'blah',
);
$build->dispatch('inc2blib');
$build->create_build_script;
次に、メイン プログラムでuse blib 'inc/PerlIO-eol';
.
しかし、それはBFIです。プロジェクト ディストリビューションのメタファイルで PerlIO::eol をランタイム依存関係としてセットアップし、通常どおりインストールする必要があります。
于 2012-01-30T16:50:57.060 に答える
1
インストールする予定のマシンによって異なります。それらのすべてが同じオペレーティング システム (および同じバージョンのライブラリと Perl など) を使用している場合、それは可能かもしれません。そうでない場合は、計画されている各プラットフォーム用に事前にモジュールをコンパイルする必要があります (いくつかの .xs ファイルが含まれています)。
于 2012-01-30T16:42:21.233 に答える