From owner-freebsd-current Thu Oct 31 1: 4:16 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 834EC37B401 for ; Thu, 31 Oct 2002 01:04:14 -0800 (PST) Received: from anchor-post-34.mail.demon.net (anchor-post-34.mail.demon.net [194.217.242.92]) by mx1.FreeBSD.org (Postfix) with ESMTP id CD87E43E42 for ; Thu, 31 Oct 2002 01:04:13 -0800 (PST) (envelope-from dfr@nlsystems.com) Received: from mailgate.nlsystems.com ([62.49.251.130] helo=herring.nlsystems.com) by anchor-post-34.mail.demon.net with esmtp (Exim 3.35 #1) id 187BFM-000F81-0Y; Thu, 31 Oct 2002 09:04:12 +0000 Received: from herring (herring [10.0.0.2]) by herring.nlsystems.com (8.12.6/8.12.4) with ESMTP id g9V94Bj0035490; Thu, 31 Oct 2002 09:04:11 GMT (envelope-from dfr@nlsystems.com) Date: Thu, 31 Oct 2002 09:04:11 +0000 (GMT) From: Doug Rabson To: Daniel Eischen Cc: Alexander Kabaev , Terry Lambert , Subject: Re: [PATCH: libc]Re: gnome on current In-Reply-To: Message-ID: <20021031085946.N22480-100000@herring.nlsystems.com> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Wed, 30 Oct 2002, Daniel Eischen wrote: > On Wed, 30 Oct 2002, Alexander Kabaev wrote: > > > On Wed, 30 Oct 2002 15:51:48 -0800 > > Terry Lambert wrote: > > > > > NO. > > > > > > If you have a library that's linked to a library containing string > > > symbols, then no other library gets a chance to replace to symbols > > > with its own strong symbols. The first strong symbol always wins, > > > and the search is defined to be depth-first. > > > > You are ignoring the fact, that objects, loaded at the application startup > > time are getting searched first, followed RTLD_GLOBAL objects, and finally by > > the loaded object DAG. LD_PRELOAD objects override them all. > > > > > > > > First strong/last weak should win. You are saying "last weak" is not > > > winning. That's a linker bug. > > > > If last weak will win, the normal case when Xthrstub is loaded _after_ libc_r > > will break. The only way to really fix this is to export pthread_ symbols as > > strong in libc_r. Exporting them as weak sounds like is a mistake which > > should be fixed. > > I disagree. See Solaris 6, 7, 8 & 9 for an example. Actually, I don't much care about Solaris. I care that a popular desktop package which we have supported for earlier releases does not work. I don't expect anyone to ever run gnome on Solaris but people certainly run gnome on FreeBSD. If you can find some other way that pthread calls can be directed reliably to libc_r even if some random stub library was loaded first, then fine. Otherwise, it seems that strong definitions for pthread symbols is the only reasonable option (which is why gnome2 works on FreeBSD 4.7 presumably). -- Doug Rabson Mail: dfr@nlsystems.com Phone: +44 20 8348 6160 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message