This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: modified /etc/ld.so.preload (was: forestalling GNU incompatibility - proposal for binary relative dynamic linking)
- From: Edward Peschko <esp5 at pge dot com>
- To: Joe Buck <Joe dot Buck at synopsys dot COM>
- Cc: Dan Kegel <dank at kegel dot com>, ian at airs dot com, alan at lxorguk dot ukuu dot org dot uk, libc-alpha at sources dot redhat dot com, binutils at sources dot redhat dot com
- Date: Fri, 28 Jan 2005 13:14:30 -0800
- Subject: Re: modified /etc/ld.so.preload (was: forestalling GNU incompatibility - proposal for binary relative dynamic linking)
- References: <20050127041429.GA16277@venus> <41F878CC.8000502@kegel.com> <20050127211101.GD16277@venus> <41F98CBB.4010902@kegel.com> <20050128204007.GE25808@venus> <20050128210358.GA2681@synopsys.com>
On Fri, Jan 28, 2005 at 01:03:58PM -0800, Joe Buck wrote:
> On Fri, Jan 28, 2005 at 12:40:07PM -0800, Edward Peschko wrote:
> > of course, but unless you want to build everything static, you're
> > at the mercy of LD_LIBRARY_PATH which will inevitably break either
> > your executables or the system executables depending on which comes
> > first.
>
> [ offtopic ]
>
> Being "at the mercy of LD_LIBRARY_PATH" is a feature, which if you break
> will stop a number of apps, like valgrind and ltrace, from working.
> They rely, for correct function, on the ability to intercept calls to
> the C library (that is, to "call the wrong glibc").
good point..
then I really don't see anyway to do what I want to do without either
massively modifying the build infrastructure of what I am doing to make
everything either compile with the correct gcc flags, or providing
rpath-like functionality in LD_LIBRARY_PATH.
Either that or adding directories to /etc/ld.so.preload and statically
compiling the exceptions: valgrind, ltrace, etc, versus the 'wrong libc'.
Or - maybe valgrind, et al, could use LD_PRELOAD (which also could be
modified to accept directories) and then we could be at the mercy
of LD_PRELOAD instead?
Ed