From: | Martin Münstermann <mmuenstermann(at)betrusted(dot)com> |
---|---|
To: | Martin Münstermann <mmuenstermann(at)betrusted(dot)com> |
Cc: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Robert Treat <xzilla(at)users(dot)sourceforge(dot)net>, PostgreSQL-patches <pgsql-patches(at)postgresql(dot)org> |
Subject: | Re: [BUGS] 8.0.0beta1: -lpthread missing |
Date: | 2004-08-13 11:30:11 |
Message-ID: | 411CA643.8050900@betrusted.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs pgsql-patches pgsql-www |
Hi!
Martin Münstermann wrote:
>> OK, we now have thread compile failure reports on Debian and Slackware.
>>
>> The config/acx_pthread.m4 script basically tests these:
>>
>> acx_pthread_flags=3D"pthreads none -Kthread -kthread lthread -pthread
>> -pthreads -mthreads pthread --thread-safe -mt pthread-config"
>> =09
>> in that order and exits once it finds the first one that can
>> compile/link this:
>>
>> AC_TRY_LINK([#include <pthread.h>],
>> [pthread_t th; pthread_join(th, 0);
>> pthread_attr_init(0); pthread_cleanup_push(0, 0);
>> pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
>> [acx_pthread_ok=3Dyes])
>>
>> Now, the big question is why -pthread can compile/link this successfully
>> but -pthread isn't enough to build a library that uses threads.
>
>
> I suspect that on Solaris, without "-lpthread" the pthread-stubs in
> /usr/lib/libc.so might be called at runtime instead of the functional
> ones in libpthread.so.
>
> Could this easily be checked?
I can confirm this suspect for Solaris8/gcc 3.2.3.
How to reproduce it:
Add a line like
printf("### NOTE: check_sigpipe_handler called.\n");
to check_sigpipe_handler() in fe-secure.c and rebuild libpq.so.
The line is only dumped out (indicating that check_sigpipe_handler() is
being called), when the library is linked with -lpthread.
Without -lpthread no complains from the compiler or linker, but
check_sigpipe_handler() is not called, because the stub of
pthread_once() in libc.so does nothing.
--> We need -lpthread on solaris, too.
Regards,
Martin
From | Date | Subject | |
---|---|---|---|
Next Message | Hans-Ulrich Schaefer | 2004-08-13 12:41:26 | postgresql 8.0.0 beta1 |
Previous Message | Martin Münstermann | 2004-08-13 09:50:24 | Re: [BUGS] 8.0.0beta1: -lpthread missing |
From | Date | Subject | |
---|---|---|---|
Next Message | Gavin Sherry | 2004-08-13 11:36:03 | Re: ALTER INDEX |
Previous Message | Andreas Pflug | 2004-08-13 10:45:12 | Re: make fails if path has spaces |
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2004-08-13 13:17:37 | Re: [BUGS] 8.0.0beta1: -lpthread missing |
Previous Message | Martin Münstermann | 2004-08-13 09:50:24 | Re: [BUGS] 8.0.0beta1: -lpthread missing |