3

cpanm から PAR を次のようにインストールしようとしてcpanm App::Packer::PARいますが、次のエラーが表示されます。

skipping R/RJ/RJBS/perl-5.22.0.tar.bz2
! Installing the dependencies failed: Module ExtUtils::Embed is not installed
! Bailing out the installation for PAR-Packer-1.026.

cpanm は依存関係を自動的にインストールするはずですが、手動でインストールしようとしました: cpanm ExtUtils::Embed、しかし同じエラーしか出ませんでした:skipping R/RJ/RJBS/perl-5.22.0.tar.bz2 なぜこれが失敗するのか、どうすればうまくいくのかについてのアイデアはありますか?

4

1 に答える 1

4

ExtUtils::Embed は 2 つの機能を持つモジュールです。つまり、ディストリビューションの一部としてperl配布されるだけでなく、2 つ目のディストリビューションでも配布されます。

cpanmディストリビューションの代わりにperlディストリビューションをインストールして ExtUtils::Embed をインストールしようとしています。なんで?わからない。たぶんそれが新しいからです(1.2505ではなく1.32)。ExtUtils-Embed

cpanm賢明なことに、自分自身をアップグレードしたくないのperlです。

現在、最新の App::Packer::PARMETAは ExtUtils::Embed の最小バージョンを指定していないため、ExtUtils-Embedディストリビューションのバージョンで十分である可能性があります。次のコマンドはこれを実現します。

cpanm D/DO/DOUGM/ExtUtils-Embed-1.14.tar.gz

ただし、前述したように、ExtUtils::Embed には Perl が付属しています。これは 15 年以上 (Perl 5.4 より前から) 行われてきました。インストールしなければ意味がありません。

perlディストリビューションを複数のパッケージに分割することで、プロバイダーが頭痛の種を引き起こすことを決定したシステムを使用しているようです。の不足部分をインストールするには、 を使用するのではなく、システムのパッケージ マネージャー (apt-getなど) を使用してください。yumperlcpanm

于 2015-08-21T22:27:21.750 に答える