Optware / Optware-ng

280 stars 52 forks source link

perl_5.20.1-3_i686.ipk missing Opcode.pm, breaking CPAN #77

Closed trammel closed 8 years ago

trammel commented 8 years ago

It looks like the perl_5.20.1-3_i686.ipk package is missing a core perl module, breaking core functions like installing other modules.

> perl -MCPAN -e shell
Can't locate Opcode.pm in @INC (you may need to install the Opcode module) (@INC contains: /opt/lib/perl5/site_perl/5.20.1/i686-linux /opt/lib/perl5/site_perl/5.20.1 /opt/lib/perl5/5.20.1/i
686-linux /opt/lib/perl5/5.20.1 /opt/lib/perl5/site_perl/5.20.1) at /opt/lib/perl5/site_perl/5.20.1/Safe.pm line 50.
BEGIN failed--compilation aborted at /opt/lib/perl5/site_perl/5.20.1/Safe.pm line 50.
Compilation failed in require at /opt/lib/perl5/5.20.1/CPAN.pm line 56.
BEGIN failed--compilation aborted at /opt/lib/perl5/5.20.1/CPAN.pm line 56.
Compilation failed in require.
BEGIN failed--compilation aborted.```
alllexx88 commented 8 years ago

Opcode perl extension is pre-disabled during perl-cross configuration, even if -Duseopcode='true' is passed. My guess is that it doesn't cross-compile well. Anyway, installing modules automatically using CPAN module isn't supported by Optware-ng perl, for two reasons: 1) Optware-ng needs additional non- standard compilation flags; 2) this perl was cross-compiled, and most likely CPAN module will attempt to use the cross-toolchain that was used on the build machine If you want additional modules not in the repos, you either have to manually compile it with proper flags, or add it to Optware-ng by issuing a pull request. I might also add it myself if you can justify its usefulness.