Thread: Postgresql6.3.2 libdld and the twilight zone.

Postgresql6.3.2 libdld and the twilight zone.

From
Donald Delmar Davis
Date:
I am running up the new version of posgresql on my 10.20 box.

I am compiling with gcc.2.7.2
I am using the -fPIC -DPIC -fno-gnu-linker flags but the weirdest thing
happens with the front end.

/usr/lib/dld.sl: Can't open shared library: ../../interfaces/libpq/libpq.sl
/usr/lib/dld.sl: No such file or directory

Oddly enough it works fine from the source tree.

do-de do do.



Re: [HACKERS] Postgresql6.3.2 libdld and the twilight zone.

From
Tom Lane
Date:
Donald Delmar Davis <don@3dangst.com> writes:
> I am running up the new version of posgresql on my 10.20 box.
> /usr/lib/dld.sl: Can't open shared library: ../../interfaces/libpq/libpq.sl
> /usr/lib/dld.sl: No such file or directory
> Oddly enough it works fine from the source tree.

The problem is that you don't have a good path to the installed
libpq.sl.  The HP executables created by the 6.3.2 release only have the
relative path that you see above; if you're not in a directory such
that that relative path finds libpq.sl, you lose.

Quickest workaround is to set SHLIB_PATH environment variable to
point to the installed lib directory.  (You might also have to
tweak the executables to get them to pay attention to SHLIB_PATH;
see chatr(1) to find out how to check and change this setting.)

I submitted HPUX patches a week or two ago that include a real fix
for this, namely embedding the name of the installed lib directory
into the executables so that they work without needing SHLIB_PATH.
I dunno if these patches have gotten into the current snapshots,
but you can look in the pgsql-patches mail list archive for them.

BTW you also need to make sure libpq.sl has permissions 555.

            regards, tom lane