[openssl-dev] [Bug, maybe] [master] bin/* no longer find their libraries if installed in non-default locations
Steffen Nurpmeso
steffen at sdaoden.eu
Wed Mar 1 22:17:03 UTC 2017
Hello,
Richard Levitte <levitte at openssl.org> wrote:
|In message <20170301165032.8jhWg%steffen at sdaoden.eu> on Wed, 01 Mar \
|2017 17:50:32 +0100, Steffen Nurpmeso <steffen at sdaoden.eu> said:
|
|steffen> "Salz, Rich" <rsalz at akamai.com> wrote:
|steffen> |> This is new behaviour, until now the installation was \
|always self-contain\
|steffen> |> ed
|steffen> |> when configured via
|steffen> |>
|steffen> |> ./config --prefix=$(MYPREFIX) zlib-dynamic no-hw shared
|steffen> |
|steffen> |Did you install the libraries in a standard place?
|steffen> |
|steffen> |> I think this should at least be noted in CHANGES or so.
|steffen> |
|steffen> |I don't think so. I think the libs weren't installed.
|steffen>
|steffen> Yes, also in my opinion the old behaviour was much, much better.
|
|I very much disagree. We have had bug reports as well as cases of our
|own because a new compilation that you want to test picked up
|previously installed versions of the libraries (usually an older
|version). The reason for doing so previously was because we installed
|the libraries in non-standard locations by default.
That unpuzzles me a little bit -- this behaviour did exist. Good.
|Since OpenSSL 1.1.0 and on is installing in standard locations by
|default, we don't have to use these mechanisms for a default build.
|With that, we realised that choosing to use DT_RPATH, DT_RUNPATH (they
|are different) or whatever isn't really our decision to make, but the
|decision of the packager or the individual user, so we've handed the
|decision to you.
|
|For the GNU toolchain, I'd recommend configuring with something like
|this (from memory, I might be fuzzy in the details):
|
| -Wl,--enable-new-dtags -rpath '$(LIBRPATH)'
|
|LIBRPATH is a convenience Makefile variable that gets correctly set to
|the configured shared library installation directory, meant for
|exactly this sort of situation.
The latter (DT_RUNPATH) does not overwrite $LD_LIBRARY_PATH, yes,
when i reported the dynamic link test failures a while back i have
seen that and also added support for this new linker flag to my
software. It is i think off-topic that now new environment
variables come up that makes me wonder why the LD_PRELOAD ..
DT_RPATH .. LD_LIBRARY_PATH chain has ever been declared
deprecated.
LIBRPATH i did not know about yet, thanks for the pointer, i will
read about it.
Yes, i mean, i just didn't know this, it is not mentioned anywhere
(i think that would well be worth in entry in INSTALL), and
i really would have sworn that it worked in the past.
Thank you, and
Ciao!
--steffen
More information about the openssl-dev
mailing list