Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Oct 1999 07:53:47 +1000
From:      John Birrell <jb@cimlogic.com.au>
To:        Daniel Eischen <eischen@vigrid.com>
Cc:        jdp@polstra.com, marcel@scc.nl, current@FreeBSD.ORG
Subject:   Re: World breakage in libc_r?
Message-ID:  <19991015075346.B67481@freebsd1.cimlogic.com.au>
In-Reply-To: <199910142135.RAA00099@pcnet1.pcnet.com>; from Daniel Eischen on Thu, Oct 14, 1999 at 05:35:05PM -0400
References:  <199910142135.RAA00099@pcnet1.pcnet.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Oct 14, 1999 at 05:35:05PM -0400, Daniel Eischen wrote:
> One of the things on my wish list is a libpthread that can be linked
> with libc.  So the way to accomplish this is to have null hooks with
> weak symbols in libc, and provide the same (non-null) functions in
> libpthread but with strong symbols?

Weak symbols don't work too well _between_ libraries. If libc is linked
before libpthread, any unresolved references when libc is searched will
use the weak symbols from there, regardless of the fact that a strong
symbol exists in libpthread. If libc is linked after libpthread, then
you can have libc internal references to things that should been resolved
to things in libpthread, but end up using the weak symbols in libc
because that is all there is left. 8-(

Not a simple problem to solve. The current tools don't help at all. A
second library pass to resolve weak symbols would have been better. It's
too late for that now, though, since you can change the semantics on the
shared loader.

-- 
John Birrell - jb@cimlogic.com.au; jb@freebsd.org http://www.cimlogic.com.au/
               john.birrell@opendirectory.com.au


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19991015075346.B67481>