On Wed, Aug 09, 2006 at 05:11:37PM -0400, Tom Lane wrote:
> > Jim C. Nasby wrote:
> >> Platypus just started failing...
> >> http://pgbuildfarm.org/cgi-bin/show_log.pl?nm=platypus&dt=2006-08-09%2010:05:01
> gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline 
> -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -g  
> -I./../../include -I../../../../../src/interfaces/libpq -I../../include 
> -I../../../../../src/include -L../../../../../src/port -L/usr/local/lib 
> -Wl,-R'/home/buildfarm/buildfarm/HEAD/inst/lib' -L../../ecpglib 
> -L../../pgtypeslib -L../../../libpq num_test2.c -lpgport -lintl -lssl 
> -lcrypto -lz -lreadline -lcrypt -lm  -lpgtypes -lecpg -lpq  -o num_test2
> /tmp/buildfarm/ccwtFkAf.o(.text+0x259): In function `main':
> /home/buildfarm/buildfarm/HEAD/pgsql.67800/src/interfaces/ecpg/test/pgtypeslib/num_test2.pgc:102:
>  undefined reference to `PGTYPESdecimal_new'
> /tmp/buildfarm/ccwtFkAf.o(.text+0x292):/home/buildfarm/buildfarm/HEAD/pgsql.67800/src/interfaces/ecpg/test/pgtypeslib/num_test2.pgc:118:
>  undefined reference to `PGTYPESdecimal_free'
> gmake[5]: *** [num_test2] Error 1
> I note that both those functions exist in ecpg's pgtypeslib in HEAD
> but not in 8.1.  I'm betting you have an older pgtypeslib.so in
> /usr/local/lib and that the poorly-chosen order of -L flags in the
> above command is the problem.
> Basically the bug here is that src/interfaces/ecpg/test/Makefile.regress
> does
> override LDFLAGS += -L../../ecpglib -L../../pgtypeslib -L../../../libpq
> which is guaranteed to create the wrong ordering of -L switches compared
> to anything coming from "configure --with-libraries".  We need all the
> -L switches for inside-the-build-tree directories to come before all the
> ones for other places.  pg_xs.mk does this by the simple expedient of
> including PG_LIBS before LDFLAGS on the link command line;
> Makefile.shlib has a more complex approach involving surgery on LDFLAGS
> itself; but one way or the other you need to be careful.

Makes sense, since the machine has an install of 8.1 out of FreeBSD

So... do we want something like

override LDFLAGS := $(LDFLAGS_NO_L) -L../../ecpglib -L../../pgtypeslib

Jim C. Nasby, Sr. Engineering Consultant      [EMAIL PROTECTED]
Pervasive Software      http://pervasive.com    work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf       cell: 512-569-9461

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?


Reply via email to