You are not logged in.

#1 2012-06-18 20:19:00

Chris Dennis
Member
Registered: 2012-01-20
Posts: 10

Perl 5.16

A recent update brought in Perl 5.16, replacing 5.14, and since then various Perl scripts don't run.

Discussion (http://www.perlmonks.org/?node_id=976682) at perlmonks suggests that Perl 5.14 and 5.16 have got tangled up.

Now I don't know how to untangle them.

Most of the Perl modules I use are from core or extras, and I've used CPANPLUS::dist::arch for others.  In the past I recall having to do a 'self update' with cpanp, but I can't even do that now because cpanp is broken:

$ cpanp
Attempt to reload Module/Load/Conditional.pm aborted.
Compilation failed in require at /usr/share/perl5/site_perl/IPC/Cmd.pm line 50.
BEGIN failed--compilation aborted at /usr/share/perl5/site_perl/IPC/Cmd.pm line 50.
Compilation failed in require at /usr/share/perl5/site_perl/CPANPLUS/Config.pm line 18.
BEGIN failed--compilation aborted at /usr/share/perl5/site_perl/CPANPLUS/Config.pm line 18.
Compilation failed in require at /usr/share/perl5/site_perl/CPANPLUS/Configure.pm line 7.
BEGIN failed--compilation aborted at /usr/share/perl5/site_perl/CPANPLUS/Configure.pm line 7.
Compilation failed in require at /usr/share/perl5/site_perl/CPANPLUS/Backend.pm line 7.
BEGIN failed--compilation aborted at /usr/share/perl5/site_perl/CPANPLUS/Backend.pm line 7.
Compilation failed in require at /usr/share/perl5/site_perl/CPANPLUS.pm line 7.
BEGIN failed--compilation aborted at /usr/share/perl5/site_perl/CPANPLUS.pm line 7.
Compilation failed in require at /usr/bin/site_perl/cpanp line 11.
BEGIN failed--compilation aborted at /usr/bin/site_perl/cpanp line 11.

Any ideas on how to fix this?

cheers

Chris

Offline

#2 2012-06-19 11:38:53

juster
Forum Fellow
Registered: 2008-10-07
Posts: 195

Re: Perl 5.16

The two versions of perl aren't tangled up. The installed modules are what is tangled up. You have duplicates installed into site_perl by the cpan[p] shell. If you type perl -v you will see the load paths. Modules installed in site_perl have higher precedence than vendor_perl, where packages are installed, or core_perl.

Delete all files under /usr/bin/site_perl, /usr/lib/perl5/site_perl and /usr/share/perl5/site_perl to remove the duplicates installed by the cpan shell. You will also want to rebuild all AUR packages that contain perl XS modules. This will print them out:

pacman -Qml | awk '/_perl\/auto\/.+\.so$/ { print $1 }' | uniq

Offline

#3 2012-06-20 13:28:34

Chris Dennis
Member
Registered: 2012-01-20
Posts: 10

Re: Perl 5.16

Thanks juster -- that worked.

Offline

Board footer

Powered by FluxBB