Hi,
On Fri, Jan 08, 2016 at 11:44:49AM -0800, David Lowe wrote:
> On 2016Jan 7,, at 17:32, Ryan Schmidt <subversion-2015_at_ryandesign.com> wrote:
> >
> > During the build of Subversion 1.9.3, it calls the just-built svnversion program. On OS X at least, this crashes because the just-built Subversion libraries have not been installed yet so they are not in their expected place. The crash causes OS X to create a crash log file, which I've attached, but the relevant bit is:
> >
> >
> > Dyld Error Message:
> > Library not loaded: /opt/local/lib/libsvn_wc-1.0.dylib
> > Referenced from: /opt/local/var/macports/*/svnversion
> > Reason: image not found
> >
> >
> > I do set DESTDIR; that may be necessary to reproduce the problem.
> >
> > A solution on OS X is for the build system to set DYLD_LIBRARY_PATH to the directory where the libraries can be found in the build directory, anytime you want to run a just-built program that links with just-built libraries. I imagine the problem would affect other unix operating systems as well, and for them the solution may be to set LD_LIBRARY_PATH, but I am not familiar with non-OS X unix systems.
>
> We have been seeing this problem a lot with FOSS on El Crapitan, caused by the new System Integrity Protection [SIP]. Unfortunately, the engineers who came up with this feature must not have used any software that wants to run tests prior to installation.
Hmm, wouldn't that perhaps happen to be a (albeit possibly not so?) clever way
to force people to produce fully prefix-relocatable binaries,
by ways of generic rpath etc. mechanisms?
(via generic Linux $ORIGIN markers etc., see e.g.
https://cmake.org/Wiki/CMake_RPATH_handling#CMake_and_the_RPATH )
I.e., a special way of saying "your build distillery is B0RKEN, fix it"?
I've been going through the trouble
of making my poor (currently unsupportable :() proprietary app
fully supportive of relocation (for purposes of rpm relocation, shar archive, etc.)
some 3 years ago,
that's why this thought came up rather naturally.
HTH,
Andreas Mohr
Received on 2016-01-08 22:53:15 CET