Matthew Seaman wrote:
On Wed, Mar 17, 2004 at 02:20:34PM +0100, Heinrich Rebehn wrote:


this is the ldd output:

[EMAIL PROTECTED] [/usr/local/libexec/apache] # ldd ./libphp4.so
./libphp4.so:

[...]


libc_r.so.5 => /usr/lib/libc_r.so.5 (0x287fd000)


Hmmmm... Which OS version are you building this on?  If it's
5.2.1-RELEASE, I think that libc_r.so.5 should be replaced by
libpthread.so.N -- and one exceedingly annoying problem is that in a
dynamically linked program like Apache, parts of it can end up being
linked against libpthread, and other parts can be linked against
libc_r, which will cause the whole thing to crash.

One solution is to use /etc/libmap.conf to substiture libpthread for
libc_r during the dynamic link stage of program startup. See
libmap.conf(5).  /etc/libmap.conf should contain something like:

     libpthread.so.1         libpthread.so.1 # Everything uses 'libpthread'
     libpthread.so           libpthread.so

     libc_r.so.5             libpthread.so.1 # Everything that uses 'libc_r'
     libc_r.so               libpthread.so   # now uses 'libpthread'

Of course, the ultimate solution is to fix all of the ports and
recompile them so that they automatically link against the correct
threading library.

Cheers,

Matthew


Hi Matthew,


I tried substituting libc_r with libkse (there is no libpthread on 5.2.1-RELEASE-p3). Still no good. httpd dumps core. :-(

I did an lsof for the httpd process (with php4 commented out) and it shows no sign of any two modules using different threading libraries:

# lsof|grep 76767|grep /lib|awk '{print $9}'
/libexec/ld-elf.so.1
/lib/libcrypt.so.2
/usr/local/lib/libmm.so.13
/lib/libc.so.5
/usr/local/libexec/apache/mod_mmap_static.so
/usr/local/libexec/apache/mod_vhost_alias.so
/usr/local/libexec/apache/mod_env.so
/usr/local/libexec/apache/mod_define.so
/usr/local/libexec/apache/mod_log_config.so
/usr/local/libexec/apache/mod_mime_magic.so
/usr/local/libexec/apache/mod_mime.so
/usr/local/libexec/apache/mod_negotiation.so
/usr/local/libexec/apache/mod_status.so
/usr/local/libexec/apache/mod_info.so
/usr/local/libexec/apache/mod_include.so
/usr/local/libexec/apache/mod_autoindex.so
/usr/local/libexec/apache/mod_dir.so
/usr/local/libexec/apache/mod_cgi.so
/usr/local/libexec/apache/mod_asis.so
/usr/local/libexec/apache/mod_imap.so
/usr/local/libexec/apache/mod_actions.so
/usr/local/libexec/apache/mod_speling.so
/usr/local/libexec/apache/mod_userdir.so
/usr/local/libexec/apache/mod_alias.so
/usr/local/libexec/apache/mod_rewrite.so
/usr/local/libexec/apache/mod_access.so
/usr/local/libexec/apache/mod_auth.so
/usr/local/libexec/apache/mod_auth_anon.so
/usr/local/libexec/apache/mod_auth_db.so
/usr/local/libexec/apache/mod_digest.so
/usr/local/libexec/apache/libproxy.so
/usr/local/libexec/apache/mod_cern_meta.so
/usr/local/libexec/apache/mod_expires.so
/usr/local/libexec/apache/mod_headers.so
/usr/local/libexec/apache/mod_usertrack.so
/usr/local/libexec/apache/mod_unique_id.so
/usr/local/libexec/apache/mod_setenvif.so
/usr/local/libexec/apache/mod_layout.so
/usr/local/libexec/apache/libssl.so
/usr/lib/libssl.so.3
/lib/libcrypto.so.3

# ldd /usr/local/libexec/apache/libphp4.so
/usr/local/libexec/apache/libphp4.so:
libcrypto.so.3 => /lib/libcrypto.so.3 (0x282fc000)
libssl.so.3 => /usr/lib/libssl.so.3 (0x2840a000)
libcrypt.so.2 => /lib/libcrypt.so.2 (0x2843c000)
libmcal.so => /usr/local/lib/libmcal.so (0x28455000)
libc-client4.so.8 => /usr/local/lib/libc-client4.so.8 (0x28464000)
libiconv.so.3 => /usr/local/lib/libiconv.so.3 (0x2851d000)
libexpat.so.5 => /usr/local/lib/libexpat.so.5 (0x2860c000)
libpq.so.3 => /usr/local/lib/libpq.so.3 (0x2862c000)
libmysqlclient.so.12 => /usr/local/lib/mysql/libmysqlclient.so.12 (0x28647000)
libmcrypt.so.8 => /usr/local/lib/libmcrypt.so.8 (0x2866a000)
libltdl.so.4 => /usr/local/lib/libltdl.so.4 (0x2869d000)
libldap.so.2 => /usr/local/lib/libldap.so.2 (0x286a5000)
liblber.so.2 => /usr/local/lib/liblber.so.2 (0x286cd000)
libpam.so.2 => /usr/lib/libpam.so.2 (0x286d8000)
libintl.so.6 => /usr/local/lib/libintl.so.6 (0x286df000)
libz.so.2 => /lib/libz.so.2 (0x286e8000)
libm.so.2 => /lib/libm.so.2 (0x286f6000)
libxml2.so.5 => /usr/local/lib/libxml2.so.5 (0x2870f000)
libc_r.so.5 => /usr/lib/libkse.so.1 (0x28808000)



Any other clues??


-- Heinrich
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to