[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/46802: lang/clang: path issue due to being built on system compiler
>Synopsis: lang/clang: path issue due to being built on system compiler
>Arrival-Date: Wed Aug 15 09:40:00 +0000 2012
>Originator: John Marino
>Release: DragonFly 3.1
Clang apparently doesn't bootstrap itself, but builds with the system compiler.
The DragonFly compilers will automatically insert an rpath of "/usr/lib/gcc41"
or "/usr/lib/gcc44" to every built executable. And it's doing it for clang.
> readelf -a /usr/pkg/bin/clang++ | grep -i rpath
0x000000000000000f (RPATH) Library rpath: [/usr/lib/gcc44:/usr/pkg/lib]
> ldd /usr/pkg/bin/clang++
libpthread.so.0 => /usr/lib/libpthread.so.0 (0x802359000)
libstdc++.so.9 => /usr/lib/gcc44/libstdc++.so.9 (0x802570000)
libm.so.3 => /usr/lib/libm.so.3 (0x802884000)
libc.so.7 => /usr/lib/libc.so.7 (0x802aa3000)
The result is that clang tries to use system gcc libstd++ which doesn't end
Build clang on any compiler that automatically inserts a base runpath. Perhaps
DragonFly is unique here.
Clang needs to build itself, and it needs to specify it's own libstd++ inside
the build directory rather than relying on system libstdc++.
Main Index |
Thread Index |