Re: Buildfarm failure on ecpg/test/pgtypeslib

Поиск
Список
Период
Сортировка
От Jim C. Nasby
Тема Re: Buildfarm failure on ecpg/test/pgtypeslib
Дата
Msg-id 20060809215114.GX40481@pervasive.com
обсуждение исходный текст
Ответ на Re: Buildfarm failure on ecpg/test/pgtypeslib  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: Buildfarm failure on ecpg/test/pgtypeslib
Список pgsql-hackers
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:
undefinedreference 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
ports.

So... do we want something like

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

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


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: [GENERAL] WIN32 Build?
Следующее
От: "Jim C. Nasby"
Дата:
Сообщение: Re: 8.2 features status