Jason Tishler writes:
> My reasons for installing the "shared" libraries, DLLs under Cygwin,
> into bindir and libdir are as follows:
>
> 1. All of the DLLs except for plpgsql.dll need to be in the users
> PATH, otherwise Windows cannot start applications that depend on them.
Okay, so you set your PATH to include libdir. No problem there.
> The canonical example is the regression test (really psql).
Okay, so we could change the regression test driver to set a PATH that
includes libdir. No problem there.
> However,
> any app that is dependent on ecpg.dll, pgeasy.dll, pq.dll, or pq++.dll
> will have this problem too. The only exception is plpgsql.dll which
> needs to be in LD_LIBRARY_PATH since it is dlopen-ed into
> postgres.exe, if appropriate.
So you set your LD_LIBRARY_PATH to include libdir as you always had to.
No problem there.
> 3. I continued to install the DLLs to libdir because I was concerned
> that postgres.exe (or other executables) might be dlopen-ing them.
> If so, then LD_LIBRARY_PATH would have to be set to a different
> value on Cygwin than on other UNIX systems.
On modern Unixes it is no longer necessary to set LD_LIBRARY_PATH at all
(and on those where it is the variable isn't necessarily called that), so
we're looking at platform-specific requirements anyway.
> Given more insight into my reasoning, will you reconsider and accept my
> Makefile.shlib patch?
I'd like to know what libtool does. Diverging from libtool behaviour will
get us into trouble in the future.
--
Peter Eisentraut peter_e@gmx.net http://yi.org/peter-e/