Worked through some troubles on irc last night, thought I would post it in 
case anyone else sees something similar. 

system is Slackware 8.1, Linux phppgadmin 2.4.18 #2 Fri May 31 01:21:23 PDT 
2002 i586 unknown

./configure was run with '--prefix=/usr/local/pgsql-8.0.0' '--enable-debug' 
'--enable-depend' '--enable-cassert' '--enable-thread-safety' '--with-tcl' 
'--without-tk' '--with-python'   which worked fine on 7.0 - 7.4, and seemed 
to work ok, however when running make I got the following:

make[4]: Leaving directory `/usr/local/src/postgresql-8.0.0beta1/src/port'
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes 
-Wmissing-declarations -DFRONTEND -I../../../src/interfaces/libpq 
-I../../../src/include -D_GNU_SOURCE   -c -o initdb.o initdb.c -MMD
rm -f dirmod.c && ln -s ../../../src/port/dirmod.c .
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes 
-Wmissing-declarations -DFRONTEND -I../../../src/interfaces/libpq 
-I../../../src/include -D_GNU_SOURCE   -c -o dirmod.o dirmod.c -MMD
rm -f exec.c && ln -s ../../../src/port/exec.c .
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes 
-Wmissing-declarations -DFRONTEND -I../../../src/interfaces/libpq 
-I../../../src/include -D_GNU_SOURCE   -c -o exec.o exec.c -MMD
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes 
-Wmissing-declarations initdb.o dirmod.o exec.o 
-L../../../src/interfaces/libpq -lpq -L../../../src/port  
-Wl,-rpath,/usr/local/pgsql-8.0.0/lib -lpgport -lz -lreadline -ltermcap 
-lcrypt -lresolv -lnsl -ldl -lm  -o initdb
../../../src/interfaces/libpq/libpq.so: undefined reference to 
`pthread_getspecific'
../../../src/interfaces/libpq/libpq.so: undefined reference to `pthread_once'
../../../src/interfaces/libpq/libpq.so: undefined reference to 
`pthread_key_create'
../../../src/interfaces/libpq/libpq.so: undefined reference to 
`pthread_setspecific'
collect2: ld returned 1 exit status
make[3]: *** [initdb] Error 1
make[3]: Leaving directory 
`/usr/local/src/postgresql-8.0.0beta1/src/bin/initdb'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/usr/local/src/postgresql-8.0.0beta1/src/bin'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/local/src/postgresql-8.0.0beta1/src'
make: *** [all] Error 2

so I went back and checked the relevant parts of configure which told me:
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for cc_r... gcc
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes

but I was pretty sure I had lpthread library on my machine (and verified this 
with some help from irc).   however Makefile.global told me 

PTHREAD_CFLAGS          = -pthread -D_REENTRANT -D_THREAD_SAFE 
-D_POSIX_PTHREAD_SEMANTICS
PTHREAD_LIBS            =

so I added -lpthread to the PTHREAD_LIBS line and it all compiled ok and 
passed regression.   one theory of where the problem lies focused on this bit 
of config.log:

configure:13260: checking for the pthreads library -lpthreads
configure:13301: gcc -o conftest -O2 -fno-strict-aliasing -g  -D_GNU_SOURCE    
conftest.c -lpthreads -lz -lreadline -ltermcap -lcrypt -lresolv -lnsl -ldl 
-lm  >&5
/usr/i386-slackware-linux/bin/ld: cannot find -lpthreads
collect2: ld returned 1 exit status
configure:13304: $? = 1
configure: failed program was:

noteably that it should have been using -lpthread not -lpthreads.  that might 
be a typo, or might be some type of configure error since I know some 
platforms use -lpthreads, but I'm not sure, maybe someone else can put the 
info to good use. 

-- 
Robert Treat
Build A Better Lamp :: Linux Apache {middleware} PostgreSQL

---------------------------(end of broadcast)---------------------------
TIP 3: if posting/reading through Usenet, please send an appropriate
      subscribe-nomail command to [EMAIL PROTECTED] so that your
      message can get through to the mailing list cleanly

Reply via email to