ecpg tests compile failure
test_thread.pgc:51: undefined reference to `pthread_create'
undefined reference to `pthread_join'
Dave
On Thursday 18 December 2003 17:37, Dave Cramer wrote:
test_thread.pgc:51: undefined reference to `pthread_create'
undefined reference to `pthread_join'
It is not linking against pthreads library. Do you have -lpthread cause in
your compilation/linking command?
Shridhar
Shridhar,
Obviously not, but I just did make inside the test directory, so I
assume the Makefile needs to be fixed.
Thanks,
Dave
Show quoted text
On Thu, 2003-12-18 at 07:21, Shridhar Daithankar wrote:
On Thursday 18 December 2003 17:37, Dave Cramer wrote:
test_thread.pgc:51: undefined reference to `pthread_create'
undefined reference to `pthread_join'It is not linking against pthreads library. Do you have -lpthread cause in
your compilation/linking command?Shridhar
On Thursday 18 December 2003 18:03, Dave Cramer wrote:
Shridhar,
Obviously not, but I just did make inside the test directory, so I
assume the Makefile needs to be fixed.
I don't think so.. Check this..
[shridhar@daithan pgsql]$ find . -name Makefile.global
./src/Makefile.global
[shridhar@daithan pgsql]$ grep THREAD_LIBS ./src/Makefile.global
THREAD_LIBS = -lpthread
If you don't have this flag defined, the tests won't be linked against the
thread library. Check what value this flag is set to.
You did a ./configure --enable-thread-safety, right? Which platform is this
BTW?
This is on a CVS head checkout from couple of days ago on linux.. All the
tests got successfully compiled.
Shridhar
Dave Cramer wrote:
Shridhar,
Obviously not, but I just did make inside the test directory, so I
assume the Makefile needs to be fixed.Thanks,
Dave
On Thu, 2003-12-18 at 07:21, Shridhar Daithankar wrote:
On Thursday 18 December 2003 17:37, Dave Cramer wrote:
test_thread.pgc:51: undefined reference to `pthread_create'
undefined reference to `pthread_join'It is not linking against pthreads library. Do you have -lpthread cause in
your compilation/linking command?
The ecpg/test/Makefile has:
override CPPFLAGS := -I$(srcdir)/../include -I$(libpq_srcdir) $(CPPFLAGS) $(THREAD_CPPFLAGS)
and
%: %.o
$(CC) $(CFLAGS) $(LDFLAGS) -L../ecpglib -L ../pgtypeslib -L../../libpq $^ $(LIBS) -lpgtypes
-lecpg -lpq $(THREAD_LIBS) -o $@
so I see the thread compile and link flags mentioned in the Makefile.
My guess is that you didn't compile the backend with
--enable-thread-safety. I wonder if I should disable the thread ecpg
test program when this compile option is not used. Is that correct?
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073
Bruce,
You are correct. I did not configure with --enable-thread-safety
Dave
Show quoted text
On Thu, 2003-12-18 at 08:40, Bruce Momjian wrote:
Dave Cramer wrote:
Shridhar,
Obviously not, but I just did make inside the test directory, so I
assume the Makefile needs to be fixed.Thanks,
Dave
On Thu, 2003-12-18 at 07:21, Shridhar Daithankar wrote:
On Thursday 18 December 2003 17:37, Dave Cramer wrote:
test_thread.pgc:51: undefined reference to `pthread_create'
undefined reference to `pthread_join'It is not linking against pthreads library. Do you have -lpthread cause in
your compilation/linking command?The ecpg/test/Makefile has:
override CPPFLAGS := -I$(srcdir)/../include -I$(libpq_srcdir) $(CPPFLAGS) $(THREAD_CPPFLAGS)
and
%: %.o
$(CC) $(CFLAGS) $(LDFLAGS) -L../ecpglib -L ../pgtypeslib -L../../libpq $^ $(LIBS) -lpgtypes
-lecpg -lpq $(THREAD_LIBS) -o $@so I see the thread compile and link flags mentioned in the Makefile.
My guess is that you didn't compile the backend with
--enable-thread-safety. I wonder if I should disable the thread ecpg
test program when this compile option is not used. Is that correct?
I have applied the following patches to CVS HEAD and 7.4.X to suppress
the ecpg thread test if they didn't enable threads via configure. I
also cleaned up the tools/thread test because this is to be used before
you have your OS running threads via configure.
---------------------------------------------------------------------------
Dave Cramer wrote:
Bruce,
You are correct. I did not configure with --enable-thread-safety
Dave
On Thu, 2003-12-18 at 08:40, Bruce Momjian wrote:Dave Cramer wrote:
Shridhar,
Obviously not, but I just did make inside the test directory, so I
assume the Makefile needs to be fixed.Thanks,
Dave
On Thu, 2003-12-18 at 07:21, Shridhar Daithankar wrote:
On Thursday 18 December 2003 17:37, Dave Cramer wrote:
test_thread.pgc:51: undefined reference to `pthread_create'
undefined reference to `pthread_join'It is not linking against pthreads library. Do you have -lpthread cause in
your compilation/linking command?The ecpg/test/Makefile has:
override CPPFLAGS := -I$(srcdir)/../include -I$(libpq_srcdir) $(CPPFLAGS) $(THREAD_CPPFLAGS)
and
%: %.o
$(CC) $(CFLAGS) $(LDFLAGS) -L../ecpglib -L ../pgtypeslib -L../../libpq $^ $(LIBS) -lpgtypes
-lecpg -lpq $(THREAD_LIBS) -o $@so I see the thread compile and link flags mentioned in the Makefile.
My guess is that you didn't compile the backend with
--enable-thread-safety. I wonder if I should disable the thread ecpg
test program when this compile option is not used. Is that correct?---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073