Thread: thread_test.c problems

thread_test.c problems

From
Wes Palmer
Date:
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:


Re: thread_test.c problems

From
Date:
[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


Re: thread_test.c problems

From
Bruce Momjian
Date:
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

Re: thread_test.c problems

From
Bruce Momjian
Date:
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

Re: thread_test.c problems

From
Wes Palmer
Date:
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


Re: thread_test.c problems

From
Bruce Momjian
Date:
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

Re: thread_test.c problems

From
Bruce Momjian
Date:
> 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

Re: thread_test.c problems

From
Date:
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


Re: thread_test.c problems

From
Date:
> 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




Re: thread_test.c problems

From
Bruce Momjian
Date:
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