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
source to share
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.
source to share