Re: Spec strings to pass ʽ-rpathʼ for each ʽ-Lʼ

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 14 Sep 2012, Ludovic Courtès wrote:

Marc Glisse <marc.glisse@xxxxxxxx> skribis:

On Thu, 13 Sep 2012, Ludovic Courtès wrote:

Hi,

The page at <http://gcc.gnu.org/faq.html>, under “Dynamic linker is
unable to find GCC libraries” reads:

 The short explanation is that if you always pass a -R option to the
 linker, your programs become dependent on directories which may be NFS
 mounted [...]

 However, if you feel you really need such an option to be passed
 automatically to the linker, you may add it to a GCC specs file. [...]
 You may add linker flags such as -R or -rpath, depending on platform
 and linker, to the *link or *lib specs.

After spending some time looking at spec strings and at the manual, I
can’t think of a way of emitting ‘-rpath LIBDIR’ for every ‘-LLIBDIR’
encountered.

%{L*:-rpath %*} maybe?

I realize this isn’t sufficient for my purposes: when $LIBRARY_PATH is
used, -L can be omitted, thus bypassing the above trick.

Ideally, for every ‘-lLIB’, it would add ‘-rpath $(dirname $(which
LIB))’, so to speak.  That may be beyond what spec strings can express,
though.  Or maybe not? :-)

If you bypass the compiler to talk to the linker (LD_* environment variables, -Wl,* flags), only the linker can help you.

--
Marc Glisse


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux