Getting configure to notice link-time vs run-time failures - Mailing list pgsql-hackers

From Tom Lane
Subject Getting configure to notice link-time vs run-time failures
Date
Msg-id 22247.979779723@sss.pgh.pa.us
Whole thread Raw
In response to Re: Re: AW: Re: GiST for 7.1 !!  (selkovjr@mcs.anl.gov)
Responses Re: Getting configure to notice link-time vs run-time failures
List pgsql-hackers
selkovjr@mcs.anl.gov writes:
> configure:4207: checking for inflate in -lz
> configure:4226: gcc -o conftest      conftest.c -lz  -lgen -lnsl -lsocket -ldl -lm -lreadline -ltermcap -lcurses
1>&5
> configure:4660: checking for crypt.h

> This doesn't tell me much. But I modified configure to exit right
> after this, without removing conftest*, and when I ran conftest it came
> back with the same message:

> typhoon> ./conftest
> ld.so.1: ./conftest: fatal: libz.so: open failed: No such file or directory
> Killed

>> It's strange that configure's check to see if zlib is linkable should
>> succeed, only to have the live startup fail. 

> This system is probaly badly misconfigured, but it would be great if
> configure could see that.

Gene and I looked into this, and the cause of the misbehavior is this:
gcc on this installation is set to search /usr/local/lib (along with the
usual system library directories).  libz.so and libreadline.so are
indeed in /usr/local/lib, so configure's tests to see if they can be
linked against will succeed.  But he had LD_LIBRARY_PATH set to a list
that did *not* include /usr/local/lib, so actually firing up the
executable would fail.

As he says, it'd be nice if configure could either prevent this or at
least detect it.  Not sure about a good way to do that --- any ideas?
        regards, tom lane


pgsql-hackers by date:

Previous
From: bpalmer
Date:
Subject: Re: $PGDATA/base/???
Next
From: Tatsuo Ishii
Date:
Subject: Re: copy from stdin; bug?