I'm trying to install PAR from cpanm like so: cpanm App::Packer::PAR, but it's giving me this error:
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.
Even though cpanm is supposed to automatically install dependencies, I tried installing it manually: cpanm ExtUtils::Embed, but only got the same error: skipping R/RJ/RJBS/perl-5.22.0.tar.bz2
Any ideas as to why this is failing and how I can make it work?
ExtUtils::Embed is a dual-lifed module, meaning it's distributed as part of the
perldistribution as well as in a second distribution.cpanmis trying to install ExtUtils::Embed by installing theperldistribution instead of theExtUtils-Embeddistribution. Why? I'm not sure. Maybe because it's newer (1.32 instead of 1.2505).cpanmis wisely unwilling to upgradeperlitself.Now, the latest App::Packer::PAR's
METAdoesn't specify a minimum version of ExtUtils::Embed, so the version in theExtUtils-Embeddistribution could very well be good enough. The following command will achieve this:HOWEVER, as I mentioned earlier, ExtUtils::Embed comes with Perl. It has done so for over 15 years (since before Perl 5.4). It makes no sense that you have to install it.
You appear to be using a system whose provider decided to cause headaches by breaking the
perldistribution into multiple packages. You should use your system's package manager (apt-get,yumor whatever) to install the missing portions ofperlrather than usingcpanm.