On Sun, Feb 03, 2008 at 05:47:01PM -0800, Russ Allbery wrote: > > [EMAIL PROTECTED]:~$ sudo /etc/init.d/slapd start > > Starting OpenLDAP: slapd - failed: > > Error Can't load '/usr/lib/perl/5.8/auto/POSIX/POSIX.so' for module POSIX: > > /usr/lib/perl/5.8/auto/POSIX/POSIX.so: undefined symbol: PL_sig_name at > > /usr/lib/perl/5.8/XSLoader.pm line 70. > > at /usr/lib/perl/5.8/POSIX.pm line 26 > > Compilation failed in require at /etc/perl/SampleLDAP.pm line 2. > > BEGIN failed--compilation aborted at /etc/perl/SampleLDAP.pm line 2. > > Compilation failed in require at (eval 2) line 1. > > BEGIN failed--compilation aborted at (eval 2) line 1.
> > Can't call method "config" on an undefined value. > Okay, thanks. > I could have sworn that this wasn't happening with 2.3.30 or > thereabouts... oh, I know what the difference is. I was testing on > amd64. Right, now I understand. > This is that problem that's caused by Perl modules not being linked with > libperl on i386 (but not on any other architecture) and instead > duplicating the symbols between perl and libperl and leaving them > undefined in the modules. This works correctly if the modules are linked > with libperl, which they are on amd64 and Debian's other architectures. > You're right, this isn't closed; it's just i386-specific. I was surprised to hear that perl modules were linked to libperl on !i386 (which would be the correct thing to do, I just didn't think the standard perl build rules handled this). So I checked, and on my amd64 system: $ ldd /usr/lib/perl/5.8.8/auto/POSIX/POSIX.so libm.so.6 => /lib/libm.so.6 (0x00002b02d4451000) libc.so.6 => /lib/libc.so.6 (0x00002b02d46d2000) /lib64/ld-linux-x86-64.so.2 (0x0000555555554000) $ So sure enough, I tried the test case from <https://bugs.launchpad.net/ubuntu/+source/openldap2.3/+bug/90812>, and: # slapd Error Can't load '/usr/lib/perl/5.8/auto/POSIX/POSIX.so' for module POSIX: /usr/lib/perl/5.8/auto/POSIX/POSIX.so: undefined symbol: PL_sig_name at /usr/lib/perl/5.8/XSLoader.pm line 70. at /usr/lib/perl/5.8/POSIX.pm line 26 Compilation failed in require at /etc/perl/SampleLDAP.pm line 2. BEGIN failed--compilation aborted at /etc/perl/SampleLDAP.pm line 2. Compilation failed in require at (eval 2) line 1. BEGIN failed--compilation aborted at (eval 2) line 1. # I have no idea if this is a regression from previous perl builds, but it looks to me like it's a general problem at this point. -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. Ubuntu Developer http://www.debian.org/ [EMAIL PROTECTED] [EMAIL PROTECTED] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]