Thread: BUG #1584: undefined symbol _tas

BUG #1584: undefined symbol _tas

From
"Benjamin Reed"
Date:
The following bug has been logged online:

Bug reference:      1584
Logged by:          Benjamin Reed
Email address:      ranger@befunk.com
PostgreSQL version: 7.3.9
Operating system:   Mac OS X 10.4.0 ("Tiger")
Description:        undefined symbol _tas
Details:

Something has changed between 10.3 and 10.4; my PostgreSQL 7.3.9 Fink
package builds just fine on 10.3, but fails on 10.4 with:

gcc -no-cpp-precomp -g -O2 -fno-strict-aliasing -Wall -Wmissing-prototypes
-Wmissing-declarations -fno-common
-L/sw/build/root-postgresql73-7.3.9-21/sw/lib -L/sw/lib  -L/sw/lib
-L/usr/lib   access/SUBSYS.o bootstrap/SUBSYS.o catalog/SUBSYS.o
parser/SUBSYS.o commands/SUBSYS.o executor/SUBSYS.o lib/SUBSYS.o
libpq/SUBSYS.o main/SUBSYS.o nodes/SUBSYS.o optimizer/SUBSYS.o port/SUBSYS.o
postmaster/SUBSYS.o regex/SUBSYS.o rewrite/SUBSYS.o storage/SUBSYS.o
tcop/SUBSYS.o utils/SUBSYS.o -lpam -lkrb5 -lz -lreadline -lresolv -ldl -lm
-o postgres
/usr/bin/ld: warning -L: directory name
(/sw/build/root-postgresql73-7.3.9-21/sw/lib) does not exist
/usr/bin/ld: Undefined symbols:
_tas

I've found some references to similar issues, but have been unable to figure
out how to apply them to the current situation.

Re: BUG #1584: undefined symbol _tas

From
Tom Lane
Date:
"Benjamin Reed" <ranger@befunk.com> writes:
> Something has changed between 10.3 and 10.4; my PostgreSQL 7.3.9 Fink
> package builds just fine on 10.3, but fails on 10.4 with:
> /usr/bin/ld: Undefined symbols:
> _tas

Perhaps Apple stopped defining __APPLE__ ?  Or switched from
__ppc__ to __powerpc__ ?  But in any case, updating to PG 7.4
or later should make the problem go away.  If you really don't
want to move off 7.3, look in src/backend/storage/lmgr/s_lock.c.

            regards, tom lane

Re: BUG #1584: undefined symbol _tas

From
Benjamin Reed
Date:
Tom Lane wrote:

> Perhaps Apple stopped defining __APPLE__ ?  Or switched from
> __ppc__ to __powerpc__ ?  But in any case, updating to PG 7.4
> or later should make the problem go away.  If you really don't
> want to move off 7.3, look in src/backend/storage/lmgr/s_lock.c.

Yeah, I got that far, but was having trouble backporting the 7.4 bits to
7.3.

The package really only exists for people with pre-existing installs; we
have packages for 7.4 and 8.0 as well.

The strange thing is, it *seems* like both __ppc__ and __powerpc__ are
defined, and __APPLE__ is definitely defined.

I'm having a really hard time narrowing down what's missing.

Re: BUG #1584: undefined symbol _tas

From
Tom Lane
Date:
Benjamin Reed <ranger@befunk.com> writes:
> The strange thing is, it *seems* like both __ppc__ and __powerpc__ are
> defined, and __APPLE__ is definitely defined.

Hmm, then maybe Apple changed something about the assembler syntax,
such that 7.3's "asm" code is failing to define a global symbol?

            regards, tom lane