Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Oct 2002 05:46:06 -0800 (PST)
From:      John Polstra <jdp@polstra.com>
To:        current@freebsd.org
Cc:        dfr@nlsystems.com
Subject:   Re: gnome on current
Message-ID:  <200210291346.g9TDk6tp049754@vashon.polstra.com>
In-Reply-To: <20021029121706.L97929-100000@herring.nlsystems.com>
References:  <20021029121706.L97929-100000@herring.nlsystems.com>

next in thread | previous in thread | raw e-mail | index | archive | help
In article <20021029121706.L97929-100000@herring.nlsystems.com>,
Doug Rabson  <dfr@nlsystems.com> wrote:
> I just spent a few hours trying to get gnome working on one of my systems,
> since kde still appears to be completely hosed. Unfortunately, not much of
> it worked reliably. In particular, all the sawfish preferences applets
> crash instantly.
> 
> On investigating one of the crashes more carefully, I discovered that all
> calls to pthread_*() were being resolved to stubs in libXThrStub.so in
> spite of the fact that libc_r was also loaded. This caused problems for
> e.g. flockfile which failed to initialise its mutex (uthread_mutex.c's
> init_static calls pthread_mutex_init instead of _pthread_mutex_init and
> ends up in libXThrStub). After working around that, I had more fun where
> one of the gnome libs tried to call pthread_getspecific().
> 
> Why isn't the linker resolving these symbols against the ones in libc_r?
> For some reason, libc_r defines them weakly so they get resolved by the
> first weak definition in the list of libs, which in this case is
> libXThrStub :-(

When a symbol is defined in multiple libraries, the first library
wins.  That's how it has always been in Unix, for archive libraries
and for shared libraries.

John
-- 
  John Polstra
  John D. Polstra & Co., Inc.                        Seattle, Washington USA
  "Disappointment is a good sign of basic intelligence."  -- Chögyam Trungpa


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?200210291346.g9TDk6tp049754>