Re: Linker problems with clang /usr/local/lib

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Sun, 22 Jan 2017 22:11:32 +0100
It only does so on Linux.  This has always been the case, but apparently
it was never noted clearly in the man page.

-Dimitry

> On 22 Jan 2017, at 21:57, Johannes Lundberg <johalun0_at_gmail.com> wrote:
> 
> I found a way to pass various linker flags to Rust through the .cargo/config file which is doable for now.
> 
> However, in man pages it says that ld looks in /etc/ld.so.conf for paths.. This seem broken. While a solution, having to write wrappers sounds like a workaround that shouldn't be needed...
> 
> 
> On Sun, Jan 22, 2017 at 12:42 PM, Dimitry Andric <dim_at_freebsd.org> wrote:
> On 22 Jan 2017, at 21:29, Johannes Lundberg <johalun0_at_gmail.com> wrote:
> >
> > How can I make 'cc' (/usr/bin/ld) look for libraries in /usr/local/lib
> > without having to specify environment or command line variables?
> >
> > I got "/usr/local/lib" in /etc/ld.so.conf and /var/run/ld-elf.so.hints.
> >
> > /sbin/ldconfig -l xxx can find library xxx in /usr/local/lib
> >
> > /usr/bin/ld can not.
> >
> > This is a problem when building Rust crates with Cargo which does not care
> > about env variables like LDFLAGS. I can however override the linker and use
> > 'gcc' which solves the problem but I assume it should be possible to get
> > clang (cc) to look in /usr/local/lib as well.
> >
> > Anyone got any ideas?
> 
> Create a wrapper script that adds -L/usr/local/lib to the link command
> line, and invokes the 'real' cc or ld.  Then either let Rust call the
> wrappers, or put them in a directory that is in front of your PATH.
> 
> -Dimitry
> 
> 


Received on Sun Jan 22 2017 - 20:11:42 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:09 UTC