Thread: MacOS X Build Fails

MacOS X Build Fails

From
Hunter Hillegas
Date:
Someone suggested the reason my MacOS X build was failing was that I didn't
follow the instructions... That's not the case... I am getting an error
during the 'make' process...

Once again, here is the error:

ar cr libpq.a `lorder fe-auth.o fe-connect.o fe-exec.o fe-misc.o fe-print.o
fe-lobj.o pqexpbuffer.o dllist.o pqsignal.o | tsort`
tsort: cycle in data
tsort: fe-connect.o
tsort: fe-exec.o
tsort: cycle in data
tsort: fe-auth.o
tsort: fe-connect.o
ranlib libpq.a
cc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes -Wmissing-declarations
-bundle -undefined suppress -bundle -undefined suppress fe-auth.o
fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o pqexpbuffer.o dllist.o
pqsignal.o       -o libpq.so.2.1
/usr/bin/ld: -undefined error must be used when -twolevel_namespace is in
effect
make[3]: *** [libpq.so.2.1] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all] Error 2
make: *** [all] Error 2

Thanks,
Hunter


Re: MacOS X Build Fails

From
Peter Eisentraut
Date:
Hunter Hillegas writes:

> cc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes -Wmissing-declarations
> -bundle -undefined suppress -bundle -undefined suppress fe-auth.o
> fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o pqexpbuffer.o dllist.o
> pqsignal.o       -o libpq.so.2.1
> /usr/bin/ld: -undefined error must be used when -twolevel_namespace is in
> effect
> make[3]: *** [libpq.so.2.1] Error 1

I don't use MacOS X, but I'm positive there are people who have previously
used PostgreSQL on MacOS X successfully.  So please consider the
possibility that you have something unusual (newer/older/different) in
your setup.

However, I'm pretty sure that the Darwin shared library support in
PostgreSQL is broken.  In particular, Darwin uses two different file
formats for linkable shared libraries and dynamically openable modules,
yet PostgreSQL uses the same commands to build both kinds.  So right now
you might be better off configuring with --disable-shared.
Unfortunately, I don't know if that option actually works. :-(

--
Peter Eisentraut   peter_e@gmx.net   http://funkturm.homeip.net/~peter


Re: MacOS X Build Fails

From
Hunter Hillegas
Date:
I'll be the first to say I have something different... All I can say is
"newer"... Still, soon everyone will have what is "newer" and if possible,
it would be good to fix it... It used to compile out of the box.

I'll try with "--disable-shared" and let y'all know.

> From: Peter Eisentraut <peter_e@gmx.net>
> Date: Wed, 12 Sep 2001 01:48:41 +0200 (CEST)
> To: Hunter Hillegas <lists@lastonepicked.com>
> Cc: PostgreSQL <pgsql-general@postgresql.org>
> Subject: Re: [GENERAL] MacOS X Build Fails
>
>> cc -traditional-cpp -g -O2 -Wall -Wmissing-prototypes -Wmissing-declarations
>> -bundle -undefined suppress -bundle -undefined suppress fe-auth.o
>> fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o pqexpbuffer.o dllist.o
>> pqsignal.o       -o libpq.so.2.1
>> /usr/bin/ld: -undefined error must be used when -twolevel_namespace is in
>> effect
>> make[3]: *** [libpq.so.2.1] Error 1
>
> I don't use MacOS X, but I'm positive there are people who have previously
> used PostgreSQL on MacOS X successfully.  So please consider the
> possibility that you have something unusual (newer/older/different) in
> your setup.
>
> However, I'm pretty sure that the Darwin shared library support in
> PostgreSQL is broken.  In particular, Darwin uses two different file
> formats for linkable shared libraries and dynamically openable modules,
> yet PostgreSQL uses the same commands to build both kinds.  So right now
> you might be better off configuring with --disable-shared.
> Unfortunately, I don't know if that option actually works. :-(