Thread: thread_test.c problems
When I try to run thread_test.c from the CVS tip, it hangs in an infinite CPU loop on both linux (RedHat AS 3.0, gcc 3.2.3) and Mac OS X 10.3.3 (gcc 3.3). I've also tried down to gcc 2.96 on Mac OS X. If I compile it with -g instead of -O2 on linux, it runs to completion and gives me: Add this to your template/$port file: STRERROR_THREADSAFE=yes GETPWUID_THREADSAFE=no GETHOSTBYNAME_THREADSAFE=no On Mac OS X, it gives me: Add this to your template/$port file: STRERROR_THREADSAFE=yes GETPWUID_THREADSAFE=yes GETHOSTBYNAME_THREADSAFE=yes If I modify the two while loops while (errno2_set == 0) while (errno1_set == 0) To execute a 'print' statement or a 'time(NULL)' instead of a null loop, then it runs to completion with -O2. If I run the 7.4.2 version of thread_test.c, for both platforms I get: Add this to your template/$port file: NEED_REENTRANT_FUNCS=yes On linux, the make run is:
[Sorry about the duplicate] On 4/7/04 9:22 AM, "Bruce Momjian" <pgman@candle.pha.pa.us> wrote: > Are any special thread flags needed? What version of Darwin are you > using? I am running Mac OS X 10.3.3. Uname -a shows that as Darwin Kernel Version 7.3.0 I took the flags from the linux version. It appears to work ok - at least it compiles and runs ok. I'm not sure how to verify threading is working correctly... What I have is: # Apple's cpp-precomp seems a tad broken, so don't use it # (Note: on OS X before 10.2, you might need -traditional-cpp instead) CC="$CC -no-cpp-precomp" # Select appropriate semaphore support USE_NAMED_POSIX_SEMAPHORES=1 # tools/thread/thread_test must be run THREAD_SUPPORT=yes THREAD_CPPFLAGS="-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS" THREAD_LIBS="-lpthread" STRERROR_THREADSAFE=yes GETPWUID_THREADSAFE=yes GETHOSTBYNAME_THREADSAFE=yes
OK, got it added to CVS. Thanks. --------------------------------------------------------------------------- Wes Palmer wrote: > On 4/7/04 9:22 AM, "Bruce Momjian" <pgman@candle.pha.pa.us> wrote: > > > Are any special thread flags needed? What version of Darwin are you > > using? > > I am running Mac OS X 10.3.3. Uname -a shows that as > > Darwin Kernel Version 7.3.0 > > > > I took the flags from the linux version. It appears to work ok - at least > it compiles and runs ok. I'm not sure how to verify threading is working > correctly... What I have is: > > # Apple's cpp-precomp seems a tad broken, so don't use it > # (Note: on OS X before 10.2, you might need -traditional-cpp instead) > CC="$CC -no-cpp-precomp" > > # Select appropriate semaphore support > USE_NAMED_POSIX_SEMAPHORES=1 > > # tools/thread/thread_test must be run > THREAD_SUPPORT=yes > THREAD_CPPFLAGS="-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS" > THREAD_LIBS="-lpthread" > > STRERROR_THREADSAFE=yes > GETPWUID_THREADSAFE=yes > GETHOSTBYNAME_THREADSAFE=yes > -- 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
wespvp@syntegra.com wrote: > [Sorry about the duplicate] > > On 4/7/04 9:22 AM, "Bruce Momjian" <pgman@candle.pha.pa.us> wrote: > > > Are any special thread flags needed? What version of Darwin are you > > using? > > I am running Mac OS X 10.3.3. Uname -a shows that as > > Darwin Kernel Version 7.3.0 > > > > I took the flags from the linux version. It appears to work ok - at least > it compiles and runs ok. I'm not sure how to verify threading is working > correctly... What I have is: > > # Apple's cpp-precomp seems a tad broken, so don't use it > # (Note: on OS X before 10.2, you might need -traditional-cpp instead) > CC="$CC -no-cpp-precomp" > > # Select appropriate semaphore support > USE_NAMED_POSIX_SEMAPHORES=1 > > # tools/thread/thread_test must be run > THREAD_SUPPORT=yes > THREAD_CPPFLAGS="-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS" > THREAD_LIBS="-lpthread" > > STRERROR_THREADSAFE=yes > GETPWUID_THREADSAFE=yes > GETHOSTBYNAME_THREADSAFE=yes If the thread_test program works, then threads are working on your platform. -- 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
On 4/7/04 9:22 AM, "Bruce Momjian" <pgman@candle.pha.pa.us> wrote: > Are any special thread flags needed? What version of Darwin are you > using? I am running Mac OS X 10.3.3. Uname -a shows that as Darwin Kernel Version 7.3.0 I took the flags from the linux version. It appears to work ok - at least it compiles and runs ok. I'm not sure how to verify threading is working correctly... What I have is: # Apple's cpp-precomp seems a tad broken, so don't use it # (Note: on OS X before 10.2, you might need -traditional-cpp instead) CC="$CC -no-cpp-precomp" # Select appropriate semaphore support USE_NAMED_POSIX_SEMAPHORES=1 # tools/thread/thread_test must be run THREAD_SUPPORT=yes THREAD_CPPFLAGS="-D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS" THREAD_LIBS="-lpthread" STRERROR_THREADSAFE=yes GETPWUID_THREADSAFE=yes GETHOSTBYNAME_THREADSAFE=yes
Wes Palmer wrote: > > OK, I just did some major wacking of the thread stuff and tried it on > > FreeBSD 4.9. It failed because getpwuid() isn't thread-safe on that > > platform, and there isn't a getpwuid_r() function, but it did pick up > > -pthread as a valid option. > > > > Please test CVS HEAD and report back. Thanks. > > Maybe -lpthread isn't needed on OS X (10.3)? I built thread_test, which > compiled without -lpthread and still worked. How can I be certain > postgresql built correctly with full thread support? > > > > % make > gcc -no-cpp-precomp -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes > -Wmissing-declarations -D_REENTRANT -D_THREAD_SAFE > -D_POSIX_PTHREAD_SEMANTICS -I../../../src/include -c -o thread_test.o > thread_test.c -MMD > gcc -no-cpp-precomp -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes > -Wmissing-declarations -D_REENTRANT -D_THREAD_SAFE > -D_POSIX_PTHREAD_SEMANTICS -L../../../src/port thread_test.o -o > thread_test > > > % otool -L thread_test (Apple technote says this is the same as "ldd") > thread_test: > /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current > version 71.0.0) > > > % ./thread_test > Your errno is thread-safe. > Your system has sterror_r(); it does not need strerror(). > Your system has getpwuid_r(); it does not need getpwuid(). > Your system has getaddrinfo(); it does not need gethostbyname() > or gethostbyname_r(). > > Your platform is thread-safe. I figured it out. It turns out that acx_pthread.m4 doesn't test any more options if the value supplied by the port if it can link to the function pthread_join. What we really want is for the configure script to _add_ to the existing options, and I thought that's what it did. Another bad thing it does is if it the supplied port options don't work, it erases them and tries it own. Now, the fact that the configure thread test program worked and reported good results means: o threads work with the supplied options o errno is thread-safe so I think the supplied Darwin options are enough. Interesting that the acx_pthread.m4 just keep checking options until it finds one that succeeds, then stops tryinug any more. I have to think about this. I think maybe we should add a PTHREAD_CPPFLAGS to template port files, and just add that in at the end. They actually have this little port-specific code: case "${host_cpu}-${host_os}" in *-aix* | *-freebsd*) flag="-D_THREAD_SAFE";; *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";; esac and I think we need to remove that and have the template files handle such thing. I will email you when CVS is ready. -- 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
> What we really want is for the configure script to _add_ to the existing > options, and I thought that's what it did. Another bad thing it does is > if it the supplied port options don't work, it erases them and tries it > own. > > Now, the fact that the configure thread test program worked and reported > good results means: > > o threads work with the supplied options > o errno is thread-safe > > so I think the supplied Darwin options are enough. > > Interesting that the acx_pthread.m4 just keep checking options until it > finds one that succeeds, then stops tryinug any more. > > I have to think about this. I think maybe we should add a > PTHREAD_CPPFLAGS to template port files, and just add that in at the > end. > > They actually have this little port-specific code: > > case "${host_cpu}-${host_os}" in > *-aix* | *-freebsd*) flag="-D_THREAD_SAFE";; > *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";; > esac > > and I think we need to remove that and have the template files handle > such thing. OK, CVS is ready. I unconditionally defined: -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS for all ports. It can't hurt if they are not supported, but it makes our job easier for porting. It allowed me to remove almost all the port-specific thread stuff. The other tests are done by configure and thread_test. Should fix Darwin compile and other platforms without mucking with the thread detection code. -- 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
On 4/25/04 11:06 PM, "Bruce Momjian" <pgman@candle.pha.pa.us> wrote: > OK, CVS is ready. I unconditionally defined: > > -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS > > for all ports. It can't hurt if they are not supported, but it makes > our job easier for porting. It allowed me to remove almost all the > port-specific thread stuff. The other tests are done by configure and > thread_test. > > Should fix Darwin compile and other platforms without mucking with the > thread detection code. Ok, I'll do another build and send you the output. Wes
> OK, CVS is ready. I unconditionally defined: > > -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS > > for all ports. It can't hurt if they are not supported, but it makes > our job easier for porting. It allowed me to remove almost all the > port-specific thread stuff. The other tests are done by configure and > thread_test. > > Should fix Darwin compile and other platforms without mucking with the > thread detection code. I tried it on Mac OS X 10.2.8 also (gcc 3.1). It seems to build ok, except that I get numerous warnings at different places in the build like the ones below. I did just verify that these warnings also occur with the 7.4.2 release. Wes gcc -no-cpp-precomp -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes -Wmissing-declarations vacuumdb.o common.o -L../../../src/interfaces/libpq -lpq -L../../../src/port -lpam -lssl -lcrypto -lkrb5 -lz -lreadline -ltermcap -lm -lpgport -o vacuumdb ld: warning multiple definitions of symbol _des_crypt /usr/lib/libcrypto.dylib(fcrypt.o) definition of _des_crypt /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_crypt ld: warning multiple definitions of symbol _des_fcrypt /usr/lib/libcrypto.dylib(fcrypt.o) definition of _des_fcrypt /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_fcrypt ld: warning multiple definitions of symbol _des_is_weak_key /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_is_weak_key /usr/lib/libcrypto.dylib(set_key.o) definition of _des_is_weak_key ld: warning multiple definitions of symbol _des_set_key /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_set_key /usr/lib/libcrypto.dylib(set_key.o) definition of _des_set_key ld: warning multiple definitions of symbol _des_key_sched /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_key_sched /usr/lib/libcrypto.dylib(set_key.o) definition of _des_key_sched ld: warning multiple definitions of symbol _des_fixup_key_parity /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_fixup_key_parity /usr/lib/libcrypto.dylib(set_key.o) definition of _des_fixup_key_parity ld: warning multiple definitions of symbol _des_check_key_parity /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_check_key_parity /usr/lib/libcrypto.dylib(set_key.o) definition of _des_check_key_parity ld: warning multiple definitions of symbol _des_ecb_encrypt /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_ecb_encrypt /usr/lib/libcrypto.dylib(ecb_enc.o) definition of _des_ecb_encrypt ld: warning multiple definitions of symbol _crypt /usr/lib/libcrypto.dylib(fcrypt.o) definition of _crypt /usr/lib/libm.dylib(crypt.So) definition of _crypt ld: warning multiple definitions of symbol _des_read_pw_string /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of _des_read_pw_string /usr/lib/libcrypto.dylib(read_pwd.o) definition of _des_read_pw_string ld: warning suggest use of -bind_at_load, as lazy binding may result in errors or different symbols being used symbol _des_cbc_cksum used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(cbc_cksm.o) symbol _des_cbc_encrypt used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(cbc_enc.o) symbol _des_check_key_parity used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) symbol _des_ecb_encrypt used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(ecb_enc.o) symbol _des_fixup_key_parity used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) symbol _des_is_weak_key used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) symbol _des_key_sched used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) symbol _des_pcbc_encrypt used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(pcbc_enc.o) symbol _des_quad_cksum used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(qud_cksm.o) symbol _des_random_key used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(rand_key.o) symbol _des_read_password used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(read2pwd.o) symbol _des_read_pw_string used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(read_pwd.o) symbol _des_set_key used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) symbol _des_string_to_key used from dynamic library /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier dynamic library /usr/lib/libcrypto.0.9.dylib(str2key.o) sed -e 's,@bindir@,/usr/local/pgsql7.4.2+/bin,g' \ -e 's,@includedir@,/usr/local/pgsql7.4.2+/include,g' \ -e 's,@includedir_server@,/usr/local/pgsql7.4.2+/include/server,g' \ -e 's,@libdir@,/usr/local/pgsql7.4.2+/lib,g' \ -e 's,@pkglibdir@,/usr/local/pgsql7.4.2+/lib,g' \ -e "s|@configure@|'--prefix=/usr/local/pgsql7.4.2+' '--with-perl' '--with-krb5' '--with-openssl' '--with-pam' '--with-rendezvous' '--enable-thread-safety' '--enable-depend'|g" \ -e 's,@version@,7.5devel,g' \ pg_config.sh >pg_config
Yep, that looks like a mess. Not sure why it is happening but in this example libcrypto and libkrb5 both have _des_crypt: > /usr/lib/libcrypto.dylib(fcrypt.o) definition of _des_crypt > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_crypt It seems -lkrb5 also contains the -lcrypto routines. If you compile without -lcrypto, does it work? If you modify Makefile.global and remove -lcrypto: LIBS = -lssl -lcrypto -lz -lreadline -ltermcap -lgetopt -lcompat -lipc -ldl -lm -lutil does it work? It might, based on those warnings. Fortunately, it is not related to threading. --------------------------------------------------------------------------- wespvp@syntegra.com wrote: > > OK, CVS is ready. I unconditionally defined: > > > > -D_REENTRANT -D_THREAD_SAFE -D_POSIX_PTHREAD_SEMANTICS > > > > for all ports. It can't hurt if they are not supported, but it makes > > our job easier for porting. It allowed me to remove almost all the > > port-specific thread stuff. The other tests are done by configure and > > thread_test. > > > > Should fix Darwin compile and other platforms without mucking with the > > thread detection code. > > I tried it on Mac OS X 10.2.8 also (gcc 3.1). It seems to build ok, except > that I get numerous warnings at different places in the build like the ones > below. > > I did just verify that these warnings also occur with the 7.4.2 release. > > Wes > > gcc -no-cpp-precomp -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes > -Wmissing-declarations vacuumdb.o common.o -L../../../src/interfaces/libpq > -lpq -L../../../src/port -lpam -lssl -lcrypto -lkrb5 -lz -lreadline > -ltermcap -lm -lpgport -o vacuumdb > ld: warning multiple definitions of symbol _des_crypt > /usr/lib/libcrypto.dylib(fcrypt.o) definition of _des_crypt > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_crypt > ld: warning multiple definitions of symbol _des_fcrypt > /usr/lib/libcrypto.dylib(fcrypt.o) definition of _des_fcrypt > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_fcrypt > ld: warning multiple definitions of symbol _des_is_weak_key > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_is_weak_key > /usr/lib/libcrypto.dylib(set_key.o) definition of _des_is_weak_key > ld: warning multiple definitions of symbol _des_set_key > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_set_key > /usr/lib/libcrypto.dylib(set_key.o) definition of _des_set_key > ld: warning multiple definitions of symbol _des_key_sched > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_key_sched > /usr/lib/libcrypto.dylib(set_key.o) definition of _des_key_sched > ld: warning multiple definitions of symbol _des_fixup_key_parity > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_fixup_key_parity > /usr/lib/libcrypto.dylib(set_key.o) definition of _des_fixup_key_parity > ld: warning multiple definitions of symbol _des_check_key_parity > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_check_key_parity > /usr/lib/libcrypto.dylib(set_key.o) definition of _des_check_key_parity > ld: warning multiple definitions of symbol _des_ecb_encrypt > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_ecb_encrypt > /usr/lib/libcrypto.dylib(ecb_enc.o) definition of _des_ecb_encrypt > ld: warning multiple definitions of symbol _crypt > /usr/lib/libcrypto.dylib(fcrypt.o) definition of _crypt > /usr/lib/libm.dylib(crypt.So) definition of _crypt > ld: warning multiple definitions of symbol _des_read_pw_string > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) definition of > _des_read_pw_string > /usr/lib/libcrypto.dylib(read_pwd.o) definition of _des_read_pw_string > ld: warning suggest use of -bind_at_load, as lazy binding may result in > errors or different symbols being used > symbol _des_cbc_cksum used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(cbc_cksm.o) > symbol _des_cbc_encrypt used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(cbc_enc.o) > symbol _des_check_key_parity used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) > symbol _des_ecb_encrypt used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(ecb_enc.o) > symbol _des_fixup_key_parity used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) > symbol _des_is_weak_key used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) > symbol _des_key_sched used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) > symbol _des_pcbc_encrypt used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(pcbc_enc.o) > symbol _des_quad_cksum used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(qud_cksm.o) > symbol _des_random_key used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(rand_key.o) > symbol _des_read_password used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(read2pwd.o) > symbol _des_read_pw_string used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(read_pwd.o) > symbol _des_set_key used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(set_key.o) > symbol _des_string_to_key used from dynamic library > /usr/lib/libkrb5.dylib(ProjectBuilderMasterObjectFile.o) not from earlier > dynamic library /usr/lib/libcrypto.0.9.dylib(str2key.o) > sed -e 's,@bindir@,/usr/local/pgsql7.4.2+/bin,g' \ > -e 's,@includedir@,/usr/local/pgsql7.4.2+/include,g' \ > -e 's,@includedir_server@,/usr/local/pgsql7.4.2+/include/server,g' \ > -e 's,@libdir@,/usr/local/pgsql7.4.2+/lib,g' \ > -e 's,@pkglibdir@,/usr/local/pgsql7.4.2+/lib,g' \ > -e "s|@configure@|'--prefix=/usr/local/pgsql7.4.2+' '--with-perl' > '--with-krb5' '--with-openssl' '--with-pam' '--with-rendezvous' > '--enable-thread-safety' '--enable-depend'|g" \ > -e 's,@version@,7.5devel,g' \ > pg_config.sh >pg_config > > > > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faqs/FAQ.html > -- 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