Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 17 Jan 2006 09:19:48 -0500 (EST)
From:      Daniel Eischen <deischen@freebsd.org>
To:        Doug White <dwhite@gumbysoft.com>
Cc:        current@freebsd.org
Subject:   Re: New malloc breaks old libpthread
Message-ID:  <Pine.GSO.4.43.0601170906010.12052-100000@sea.ntplx.net>
In-Reply-To: <Pine.GSO.4.43.0601170051260.10462-100000@sea.ntplx.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 17 Jan 2006, Daniel Eischen wrote:

> On Mon, 16 Jan 2006, Doug White wrote:
>
> > Got this trying to run an old Xorg binary on a -CURRENT machine I don't
> > update very frequently:
> >
> > /libexec/ld-elf.so.1: /usr/lib/libpthread.so.1: Undefined symbol "__malloc_lock"
> >
> > The libpthread.so.1 was from June 2005, prior to the libpthread version
> > bump. Unfortunately this means that RELENG_6 compatibility is broken in
> > -HEAD since the new libc.so.6 is not compatible with libraries built
> > against it prior to the merge date of the new user malloc.
>
> Don't do that.  We don't guarantee -current libraries built on
> (vastly) different dates will run nicely together.

I wasn't too clear.  libpthread.so.1 is supposed to be matched
with libc.so.5.  Your error message indicates it is trying to use
a recent libc.so.6 (which should be matched with libpthread.so.2),
not libc.so.5.  So something seems screwed up on your end
(/etc/libmap.conf?).

The only consumers of __malloc_lock and the _malloc_{pre,post}fork
symbols (in recent libc.so.6) should be libc_r, libpthread, and
libthr.  As long as you use libraries that are built from the same
source tree, you should be OK.  Even when moving from RELENG_6 to
HEAD.

-- 
DE




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.43.0601170906010.12052-100000>