Re: Tcl_CreateSlave error (pg 7.1.2, RH 7.2)

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Janine Sisk <janine@furfly.net>
Cc: pgsql-general@postgresql.org, Carl Coryell-Martin <carl@greenmediatoolshed.org>
Date: 2002-04-08T17:37:47Z
Lists: pgsql-general
Janine Sisk <janine@furfly.net> writes:
> gcc -pipe -shared -Wl,-soname,libtcl.so.0 -o pltcl.so pltcl.o -L/usr/lib
> -ltcl -ldl  -lieee -lm -lc

Oh, oh, oh ... now I remember.  See that -Wl,-soname,libtcl.so.0 switch?
That's causing pltcl.so to be marked internally with the soname
libtcl.so.0, thus the linker does not think it needs to link anything
else to resolve that reference.  (This is arguably a bug in the Red Hat
RPMs for Tcl: they put that switch into the link arguments that the Tcl
config script advertises as being correct to use when trying to link
against Tcl.  PG 7.2 has a defense against this, but 7.1.* did not.)

Probably your easiest fix is to manually repeat the link step for
pltcl.so with the -Wl bit removed, ie just

gcc -pipe -shared -o pltcl.so pltcl.o -L/usr/lib -ltcl -ldl  -lieee -lm -lc

			regards, tom lane