[Bug 960048] Can't load '/usr/lib64/perl5/auto/Fcntl/Fcntl.so' - undefined symbols
bugzilla at redhat.com
bugzilla at redhat.com
Tue May 7 09:17:13 UTC 2013
Product: Fedora
https://bugzilla.redhat.com/show_bug.cgi?id=960048
--- Comment #2 from Petr Pisar <ppisar at redhat.com> ---
Fcntl.so is plug-in into libperl.so, so there is no DT_NEED on libperl.so.
That's Ok.
I checked the openldap's back_perl.so and it's built properly:
$ scanelf -nr /usr/lib64/openldap/back_perl-2.4.so.2
TYPE RPATH NEEDED FILE
ET_DYN /usr/lib64/perl5/CORE
libperl.so,libnsl.so.1,libm.so.6,libcrypt.so.1,libutil.so.1,libldap_r-2.4.so.2,libsasl2.so.2,libssl3.so,libsmime3.so,libnss3.so,libnssutil3.so,libplds4.so,libplc4.so,libnspr4.so,libpthread.so.0,libdl.so.2,liblber-2.4.so.2,libresolv.so.2,libc.so.6
/usr/lib64/openldap/back_perl-2.4.so.2
I suspect slapd dlopens the back_perl.so with strange linking flags that makes
some libperl symbols unavailable.
openldap relies to lt_dlopenext(), and libtool library documentation states
some funny things about threads which is the symbol reported by the error
message:
Note that libltdl is not well tested in a multithreaded environment, though the
intention is that it should work (see Using libltdl in a multi threaded
environment). It was reported that GNU/Linux's glibc 2.0's dlopen with
‘RTLD_LAZY’ (which libltdl uses by default) is not thread-safe, but this
problem is supposed to be fixed in glibc 2.1. On the other hand, ‘RTLD_NOW’ was
reported to introduce problems in multi-threaded applications on FreeBSD.
Working around these problems is left as an exercise for the reader;
contributions are certainly welcome.
--
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=SG45KNpr5r&a=cc_unsubscribe
More information about the perl-devel
mailing list