On Fri, Mar 31, 2000 at 05:30:52PM -0500, John Rousseau wrote:
> On Friday Mar 31, 2000, Christopher Smith wrote:
> > On Fri, Mar 31, 2000 at 08:14:47AM -0500, John Rousseau wrote:
> > > On Friday Mar 31, 2000, Natarajan SK wrote:
> > > Kevin Hendricks solved a very similar problem for me. This is
> > > assuming that you are using native threads. Try linking in -lpthread
> > > explicitly on your link line (and make sure you don't have an
> > > explicit -lc before it).
> > >
> > > This is because you may be picking up the non-thread safe versions
> > > of libc routines.
> >
> > I am confused, I thought all you needed to do use the right routines
> > was to use -DREENTRANT.
>
> Unfortunately not. The Blackdown folks are/were considering adding
> wrappers to their native threads library (libhpi.so) so that it
> would pick up the correct versions. Currently you need to be careful
> about your link line.
Ok. I'm confused. This is from the glibc notes:
- Macro: _THREAD_SAFE
If you define one of these macros, reentrant versions of several
functions get declared. Some of the functions are specified in
POSIX.1c but many others are only available on a few other systems
or are unique to GNU libc. The problem is that the
standardization of the thread safe C library interface still is
behind.
Unlike on some other systems no special version of the C library
must be used for linking. There is only one version but while
compiling this it must have been specified to compile as thread
safe.
Is the problem actually with glibc or is it with libhpi?
--Chris
----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]