Thread: Re: 7.1.3 fails to configure on Solaris 2.7

Re: 7.1.3 fails to configure on Solaris 2.7

From
"Henry B. Hotz"
Date:
At 3:23 PM -0800 12/4/01, Henry B. Hotz wrote:
>At 8:26 PM -0500 12/3/01, Tom Lane wrote:
>>"Henry B. Hotz" <hotz@jpl.nasa.gov> writes:
>>>  configure: failed program was:
>>>  #line 6802 "configure"
>>>  #include "confdefs.h"
>>>  int main() { return 0; }
>>
>>>  I can put those 3 lines in a file and use those gcc options and it
>>>  compiles just fine thank you.
>>
>>But does it *execute*?  And return zero status?
>>
>>The usual cause of this sort of problem is messed-up shared library
>>linkage (eg, LD_LIBRARY_PATH different from linker's search path),
>>which doesn't show up till you try to execute the program.
>>That's what the test is there to catch.
>
>Ah!  No it doesn't.  It can't find /usr/local/lib/libz.so.  Let's
>see there is a configure option for that isn't there?  Setting
>LD_RUN_PATH or something. . .

OK, --with-libs=/usr/local/lib doesn't work;  --enable-rpath  doesn't
work.  Setting LD_RUN_PATH does.

Seems like this should be mentioned in the INSTALL notes.  Actually
seems like this should be taken care of automatically, but maybe
that's hard?
--
The opinions expressed in this message are mine,
not those of Caltech, JPL, NASA, or the US Government.
Henry.B.Hotz@jpl.nasa.gov, or hbhotz@oxy.edu

Re: 7.1.3 fails to configure on Solaris 2.7

From
Peter Eisentraut
Date:
Henry B. Hotz writes:

> >Ah!  No it doesn't.  It can't find /usr/local/lib/libz.so.  Let's
> >see there is a configure option for that isn't there?  Setting
> >LD_RUN_PATH or something. . .
>
> OK, --with-libs=/usr/local/lib doesn't work;  --enable-rpath  doesn't
> work.  Setting LD_RUN_PATH does.
>
> Seems like this should be mentioned in the INSTALL notes.  Actually
> seems like this should be taken care of automatically, but maybe
> that's hard?

It should be taken care of automatically by the operating system.  It's
not the task of PostgreSQL to tell your operating system how to find
shared libraries, or to override its decisions.  We can only tell you when
something is (probably) wrong.

IMHO, the setup that the link editor can find a library but the run time
linker cannot is simply broken, but the choice how to fix it is yours.

--
Peter Eisentraut   peter_e@gmx.net


Re: 7.1.3 fails to configure on Solaris 2.7

From
"Henry B. Hotz"
Date:
At 5:38 PM +0100 12/6/01, Peter Eisentraut wrote:
>Henry B. Hotz writes:
>
>>  >Ah!  No it doesn't.  It can't find /usr/local/lib/libz.so.  Let's
>>  >see there is a configure option for that isn't there?  Setting
>>  >LD_RUN_PATH or something. . .
>>
>>  OK, --with-libs=/usr/local/lib doesn't work;  --enable-rpath  doesn't
>>  work.  Setting LD_RUN_PATH does.
>>
>>  Seems like this should be mentioned in the INSTALL notes.  Actually
>>  seems like this should be taken care of automatically, but maybe
>>  that's hard?
>
>It should be taken care of automatically by the operating system.  It's
>not the task of PostgreSQL to tell your operating system how to find
>shared libraries, or to override its decisions.  We can only tell you when
>something is (probably) wrong.
>
>IMHO, the setup that the link editor can find a library but the run time
>linker cannot is simply broken, but the choice how to fix it is yours.

I couldn't agree more.

However I didn't need to do anything like that to build/install
openssl, openssh, tcl, tk, zlib, readline, enscript, or pcre.  So why
do I have to manually set LD_RUN_PATH for postgres?

Incidentally I got it to build and pass regression tests with
--prefix=/usr/local -with-tcl --with-perl -with-openssl --with-CXX
--enable-syslog.  I did have to do the /etc/system thing to increase
shared memory.  (I don't expect you to fix that one for me.  *sigh*)
Now on to getting the server properly configured. . .
--
The opinions expressed in this message are mine,
not those of Caltech, JPL, NASA, or the US Government.
Henry.B.Hotz@jpl.nasa.gov, or hbhotz@oxy.edu