This is the mail archive of the mailing list for the libstdc++ project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: libstdc++ related boostrap failure

On Thu, Feb 13, 2003 at 09:17:04PM -0600, Loren James Rittle wrote:
> <   __gthread_mutex_t _Atomic_add_mutex __attribute__ ((__weak__))
> <                                                       = __GTHREAD_MUTEX_INIT;
> ---
> >   extern __gthread_mutex_t _Atomic_add_mutex;
> The non-extern implementation was moved into the library without being
> exported in the symbol map (i.e. hidden, not available for satisfying
> the linker).

That was by design; clearly I don't understand FreeBSD as well as I should.

This symbol should ("should") only be needed by other routines within the
library, not outside it.  Namely, the two routines in atomicity.h.  I'm
confused as to why bits/gthr-default.h is showing the undefined reference.

Forcing the generic atomicity.h to be used on my system doesn't show this
problem, so I think it's still an OS thing, instead of an architectural
thing.  I'll need help from the two of you to understand what's going on.

> I think I shall allow Phil to handle considering the export of ABI
> symbols that are conditionally available on a per-port basis.

This will either be trivial or fugly, depending on GNU ld.  I'll tackle
this today.

> the included patch does solve Gerald's problem.

Gerald, would you be willing to just use that patch locally, temporarily?
I'd really like to work out /why/ the symbol needs external visibility
before making another change.  Or rather, where the reference is coming from.


I would therefore like to posit that computing's central challenge, viz. "How
not to make a mess of it," has /not/ been met.
                                                 - Edsger Dijkstra, 1930-2002

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]