Bug#639214: eglibc: changes to paths concerning crt1.o, crti.o and crtn.o breaks building LLVM Trunk
reassign 639214 general
forcemerge 637232 639214
quit
Hi Marc,
Marc J. Driftmeyer wrote:
> With the most recent changes of moving the object files under
> /usr/lib/x86_64-linux-gnu/ the linker to build Clang/LLVM breaks.
>
> A workaround is to add symlinks for crt1.o, crti.o and crtn.o back
> under /usr/lib.
>From /usr/share/doc/libc6/NEWS.Debian.gz:
Starting with the eglibc package version 2.13-5, the libraries are
shipped in the multiarch directory /lib/$arch instead of the more
traditional /lib. Similarly the includes are now shipped in
/usr/include/$arch instead of the more traditional /usr/include.
The toolchain in Debian has been updated to cope with that, and most
build systems should be unaffected. If you are using a non-Debian
toolchain to build your software and it is not able to cope with
multiarch, you might try to pass the following option to your
compiler:
-B/usr/lib/$arch -I/usr/include/$arch
Does clang support similar options?
See also http://llvm.org/bugs/show_bug.cgi?id=6541 which suggests to
me that upstream is interested in out-of-the-box support for the new
paths.
Reassigning to "general" and merging with the relevant bug, since this
is far from a libc-specific problem. See [1] for some background.
Thanks and hope that helps,
Jonathan
[1] http://wiki.debian.org/Multiarch
Reply to: