This is the mail archive of the
mailing list for the GCC project.
Re: GCC-3.0.4 (pre) on AIX requires pthreads
- From: Loren James Rittle <rittle at latour dot rsch dot comm dot mot dot com>
- To: gcc at gcc dot gnu dot org
- Cc: VEKSLER at il dot ibm dot com
- Date: Wed, 20 Feb 2002 18:59:02 -0600 (CST)
- Subject: Re: GCC-3.0.4 (pre) on AIX requires pthreads
- Organization: Networks and Infrastructure Lab (IL02/2240), Motorola Labs
- References: <VEKSLER@il.ibm.com>
In article <200202201620.LAA24058@makai.watson.ibm.com> you write:
> I have no idea what Craig is talking about. There are no
> requirements for configuring with --enable-threads.
As I read it, Craig asked a question; he did not make a statement.
The answer to Craig's question is ``no, I did not provide the
--enable-threads configuration-time option'' (based on followup from
the original problem reporter).
> G++ is not suppose to require pthreads
> except when invoked with -pthread GCC option.
False. The correct answer is ``except when so configured either by
default for the port or explicitly by the gcc installer.'' In either
case, -pthread is not honored by all ports.
>From your [David Edelsohn's] past postings, I think I understand the
AIX thread model, lack of weak symbol support, etc.
> Maybe some libstdc++ header is assuming that libc will provide
> no-op pthread symbols when not linking against -lpthread, like GNU/Linux.
libstdc++-v3 does nothing of the sort. There is not a single direct
reference to pthread_* functions left in the non-ext sources of the
library (all remaining uses are in ext/headers uninvolved with the
posted example failure). They all go through the same gthr.h
abstraction layer used by libgcc. The only way an indirect reference
to pthread_* functions can exist is when ``Thread model:'' of the
``gcc -v'' report is either posix or dce.
I have no access to AIX 4.X boxes thus I can't offer to fix this. It
will require a user with access to AIX 4.X, ability to decode
gcc/config.gcc and the motivation to learn what is happening in the
Loren J. Rittle
Senior Staff Software Engineer, Distributed Object Technology Lab
Networks and Infrastructure Research Lab (IL02/2240), Motorola Labs
email@example.com, KeyID: 2048/ADCE34A5, FDC0292446937F2A240BC07D42763672