You are not logged in.
Pages: 1
Topic closed
hello
i have this error when i try to launch amavis
etc/rc.d/amavisd restart
:: Stopping amavisd daemon [FAIL]
:: Starting amavisd daemon [BUSY] fetch_modules: error loading required module Unix/Syslog.pm:
Perl API version v5.14.0 of Unix::Syslog does not match v5.16.0 at /usr/lib/perl5/core_perl/DynaLoader.pm line 213.
Compilation failed in require at /usr/sbin/amavisd line 202.
defined(@array) is deprecated at /usr/share/perl5/site_perl/Net/Server.pm line 211.
(Maybe you should just omit the defined()?)
ERROR: MISSING REQUIRED BASIC MODULES:
Unix::Syslog
BEGIN failed--compilation aborted at /usr/sbin/amavisd line 242.
i recompiled Unix::Syslog but no change
please help
thks
Offline
seems perl was broken in latest update to perl 5.16, i get similar messages while trying to load some modules:
[disarmer@black ~]$ perl -e 'use Encode'
Perl API version v5.14.0 of Encode does not match v5.16.0 at /usr/share/perl5/core_perl/XSLoader.pm line 92.
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
[disarmer@black ~]$ perl -e 'use IO'
IO object version 1.25_06 does not match bootstrap parameter 1.25 at /usr/lib/perl5/core_perl/DynaLoader.pm line 213.
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Offline
Also getting some perl errors per perl applications, even recompiling or updating applications do not fix.
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
The helpful error message lets you know that the module you are trying to load was built for perl 5.14. Since you now have perl 5.16 the module is no longer binary compatible with the perl runtime and cannot be loaded. This applies to all XS modules which bridge C and perl code together. You must rebuild/reinstall the complaining modules.
Here are some diagnoses.
freaks:
You didn't reinstall Unix::Syslog properly. Maybe the old version was installed with cpan and you installed the new packaged version, which is not being loaded. Modules installed with the cpan shell take precedence over packaged modules.
disarmer:
You have extra copies of Encode and IO modules installed. They are included with perl. Uninstall the unnecessary duplicates. The old IO.pm file is trying to load the newer (core) binary IO.so library. Maybe.
nomorewindows:
You have to reinstall the complaining modules the applications use.
A script to find paths of loaded modules:
[juster@artemis bin]$ cat pmpath
#!/usr/bin/env perl
$m = shift or die "usage: pmpath [module name]\n";
eval "require $m" or die "pmpath: bad module: $!\n";
$m =~ s{::}{/}g;
print $INC{"$m.pm"}, "\n";
All packaged modules from a foreign source, like the AUR, need to be rebuilt. Print out a list of them:
pacman -Qml | awk '/_perl\/auto\/.+\.so$/ { print $1 }' | uniq
Any perl XS modules installed with cpan need to be rebuilt. They are under /usr/lib/perl5/site_perl/auto. Look for .so files.
edit: shorten the awk
Last edited by juster (2012-06-05 04:23:33)
Offline
I'm not sure how to reinstall the modules:
Attempt to reload XML/Fast.pm aborted.
Compilation failed in require at /usr/share/perl5/core_perl/autouse.pm line 53, <FIN> line 1.
Never mind this line told me what I was thinking earlier: pacman -Qml | awk '/_perl\/auto\/.+\.so$/ { print $1 }' | uniq
perl-xml-fast has to be reinstalled with yaourt.
Last edited by nomorewindows (2012-06-05 09:18:36)
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
juster, you're a genius. i deleted /usr/lib/perl5 and installed perl again and it works!
thank you
Offline
juster, you're a genius. i deleted /usr/lib/perl5 and installed perl again and it works!
thank you
If you had packages installed in /usr/lib/perl5/vendor_perl they will all have missing files now. Module packages (i.e. perl-*) install their files there. Better just to delete /usr/lib/perl5/site_perl/ if you need to delete something. /usr/lib/perl5/site_perl is where the cpan shell installs its architecture dependent modules.
Offline
not a big problem, i reinstalled third-party modules.
thank you
Offline
hello i recompiled some perl packages but for perl-encodedetect, the compilation failed because " /usr/lib/perl5/site_perl/current/x86_64-linux-thread-multi" cannot be found
Offline
hello i recompiled some perl packages but for perl-encodedetect, the compilation failed because " /usr/lib/perl5/site_perl/current/x86_64-linux-thread-multi" cannot be found
Perl-encode-detect by itself only has a couple of repo dependencies, not sure why it requires this?
I may have to CONSOLE you about your usage of ridiculously easy graphical interfaces...
Look ma, no mouse.
Offline
I generated a new PKGBUILD for perl-encode-detect and uploaded it to the AUR. Try the new source package.
disarmer, you're welcome.
Offline
All packaged modules from a foreign source, like the AUR, need to be rebuilt. Print out a list of them:
pacman -Qml | awk '/_perl\/auto\/.+\.so$/ { print $1 }' | uniq
Any perl XS modules installed with cpan need to be rebuilt. They are under /usr/lib/perl5/site_perl/auto. Look for .so files.
Thanks! This fixed following error message for shutter from AUR (pasted here in case somebody searches for it):
$ shutter
Perl API version v5.14.0 of Gtk2::Unique does not match v5.16.0 at /usr/lib/perl5/core_perl/DynaLoader.pm line 213.
Compilation failed in require at /usr/bin/shutter line 46.
BEGIN failed--compilation aborted at /usr/bin/shutter line 46.
Last edited by kotnik (2012-06-07 10:04:26)
It's all GNU to me.
Offline
Note: some module packages are apparently in *-perl . I resorted to deleting /usr/lib/perl5 and then reinstalled perl perl-* *-perl and all is fine, shutter works again.
Offline
Thread is three years old: please don't necrobump https://wiki.archlinux.org/index.php/Fo … bumping.22
Closing
Offline
Pages: 1
Topic closed