Re: [PATCHES] [HACKERS] HEAD doesn't cope with libraries in non-default
Bruce Momjian said: > Tom Lane wrote: >> Bruce Momjian writes: >> > Tom Lane wrote: >> >> It appears that somebody has changed things so that the -L switches >> >> appear after the -l switches (ie, too late). I'm too tired to >> >> investigate now, but my money is on Autoconf 2.59 being the problem >> >> ... >> >> > I wonder if it was this commit. I am attaching the patch so you can >> > test to see if it fixes it. If it does, please let us know. >> >> > ! SHLIB_LINK := $(filter -L%, $(LDFLAGS)) $(SHLIB_LINK) >> > ... >> > ! SHLIB_LINK := $(SHLIB_LINK) $(filter -L%, $(LDFLAGS)) >> >> Urgh. This was considered a good idea why exactly? > > I didn't like it myself but it fixed a problem with a build farm > machine, and no one objected, so I applied it, but it seemed pretty > strange to be reversing those. I will reverse the patch. > I was also slightly dubious about it. However, we do still need to solve the problem that the patch addressed. Buildfarm members platypus and cuckoo are currently failing because dblink is picking up the wrong libpq (and it appears that incorrect libraries are also being picked up in the ecpg libraries, although this isn't causing a buildfarm failure.) Alternatively, if we can't say --with-libraries=/foo/bar when /foo/bar contains possibly conflicting libraries, that should be tested for at configure time. cheers andrew ---(end of broadcast)--- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly
Re: [PATCHES] [HACKERS] HEAD doesn't cope with libraries in non-default locations
Bruce Momjian writes: > Tom Lane wrote: >> It appears that somebody has changed things so that the -L switches >> appear after the -l switches (ie, too late). I'm too tired to >> investigate now, but my money is on Autoconf 2.59 being the problem ... > I wonder if it was this commit. I am attaching the patch so you can > test to see if it fixes it. If it does, please let us know. > ! SHLIB_LINK := $(filter -L%, $(LDFLAGS)) $(SHLIB_LINK) > ... > ! SHLIB_LINK := $(SHLIB_LINK) $(filter -L%, $(LDFLAGS)) Urgh. This was considered a good idea why exactly? regards, tom lane ---(end of broadcast)--- TIP 7: don't forget to increase your free space map settings
Re: [PATCHES] [HACKERS] HEAD doesn't cope with libraries in non-default
Tom Lane wrote: > Bruce Momjian writes: > > Tom Lane wrote: > >> It appears that somebody has changed things so that the -L switches > >> appear after the -l switches (ie, too late). I'm too tired to > >> investigate now, but my money is on Autoconf 2.59 being the problem ... > > > I wonder if it was this commit. I am attaching the patch so you can > > test to see if it fixes it. If it does, please let us know. > > > ! SHLIB_LINK := $(filter -L%, $(LDFLAGS)) $(SHLIB_LINK) > > ... > > ! SHLIB_LINK := $(SHLIB_LINK) $(filter -L%, $(LDFLAGS)) > > Urgh. This was considered a good idea why exactly? I didn't like it myself but it fixed a problem with a build farm machine, and no one objected, so I applied it, but it seemed pretty strange to be reversing those. I will reverse the patch. -- Bruce Momjian| http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup.| Newtown Square, Pennsylvania 19073 ---(end of broadcast)--- TIP 4: Don't 'kill -9' the postmaster
Re: [PATCHES] [HACKERS] HEAD doesn't cope with libraries in non-default locations
Tom Lane wrote: > CVS tip fails with > ./configure --with-openssl \ > --with-includes=/usr/local/ssl/include --with-libs=/usr/local/ssl/lib > > ... > make[3]: Entering directory `/home/postgres/pgsql/src/interfaces/libpq' > ... > /usr/ccs/bin/ld +h libpq.sl.4 -b +b /home/postgres/testversion/lib fe-auth.o > fe-connect.o fe-exec.o fe-misc.o fe-print.o fe-lobj.o fe-protocol2.o > fe-protocol3.o pqexpbuffer.o pqsignal.o fe-secure.o md5.o ip.o wchar.o > encnames.o noblock.o pgstrcasecmp.o thread.o getaddrinfo.o -lssl -lcrypto > `gcc -L../../../src/port -L/usr/local/ssl/lib -Wl,-z -Wl,+b > -Wl,/home/postgres/testversion/lib -print-libgcc-file-name` > -L../../../src/port -L/usr/local/ssl/lib -o libpq.sl.4 > /usr/ccs/bin/ld: Can't find library for -lssl > make[3]: *** [libpq.sl.4] Error 1 > > It appears that somebody has changed things so that the -L switches > appear after the -l switches (ie, too late). I'm too tired to > investigate now, but my money is on Autoconf 2.59 being the problem ... I wonder if it was this commit. I am attaching the patch so you can test to see if it fixes it. If it does, please let us know. --- revision 1.91 date: 2005/07/02 23:28:22; author: momjian; state: Exp; lines: +2 -2 > A quick look shows that when you use --with-libraries=/foo/bar the > generated link line for libraries says > > -L/foo/bar -lpq > > and it should probably be the other way around (as it is for the > executables). > > So I suspect we need some makefile tuning. You were correct. This patch fixes it. Jim C. Nasby -- Bruce Momjian| http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup.| Newtown Square, Pennsylvania 19073 Index: Makefile.shlib === RCS file: /cvsroot/pgsql/src/Makefile.shlib,v retrieving revision 1.90 retrieving revision 1.91 diff -c -c -r1.90 -r1.91 *** Makefile.shlib 20 Nov 2004 21:13:04 - 1.90 --- Makefile.shlib 2 Jul 2005 23:28:22 - 1.91 *** *** 240,246 SHLIB_LINK += -ltermcap -lstdc++.r4 -lbind -lsocket -L/boot/develop/lib/x86 endif ! SHLIB_LINK := $(filter -L%, $(LDFLAGS)) $(SHLIB_LINK) ifeq ($(enable_rpath), yes) SHLIB_LINK += $(rpath) endif --- 240,246 SHLIB_LINK += -ltermcap -lstdc++.r4 -lbind -lsocket -L/boot/develop/lib/x86 endif ! SHLIB_LINK := $(SHLIB_LINK) $(filter -L%, $(LDFLAGS)) ifeq ($(enable_rpath), yes) SHLIB_LINK += $(rpath) endif ---(end of broadcast)--- TIP 7: don't forget to increase your free space map settings