Arch Linux Perl. (Data Dumper) undefined symbol Perl_xs_apiversion_bootcheck

As the latest Perl update does not allow most scripts to run on my Arch Linux system.

In most cases, this is due to the undefined character in the Data :: Dumper module. In other cases it is because of Parser.so with the same undefined symbol Perl_xs_apiversion_bootcheck

Perl v5.22.0 Data :: Dammer updated (2.154).

Full error:

/usr/bin/perl: symbol lookup error: perl5/lib/perl5/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so: undefined symbol: Perl_xs_apiversion_bootcheck

      

I already tried reinstalling modules, didn't help.

I found this thread: Error while running Perl script on two different computers

They talk about differen perl version issues that don't seem to be here.

Any other ideas? (Reinstalling perl as a whole looks impossible here ...)

thank

+3


source to share


1 answer


Arch Linux has recently been updated from Perl 5.20 to Perl 5.22. They are not ABI compliant, so any XS modules installed for Perl 5.20 will need to be rebuilt or you will get errors like the one you describe.

The Arch package perl-5.22.0-1

includes Data: Dumper 2.158. Since you say you have 2.154, you must manually install the Data :: Dumper update for Perl 5.20. You need to uninstall this (now deprecated) version.

Does pacman -Qi perl-data-dumper

it communicate anything? If so, you can try pacman -R perl-data-dumper

.

Update: You seem to have installed modules in your system Perl directories using cpan

. This forces the mix files to be installed pacman

and the files to be installed cpan

, so it is not recommended.



You should consider installing CPANPLUS :: Dist :: Arch and using cpanp

. You can do it with:

sudo pacman -S perl-cpanplus-dist-arch
setupdistarch

      

After that, installing modules with cpanp

will create a package file and install it with pacman

. Then you can use pacman

to remove them.

+2


source







All Articles