Bug#797917: Actually this bug makes clang not so useful

Danny Edel debian at danny-edel.de
Thu Sep 3 21:48:27 UTC 2015


On Thu, 3 Sep 2015 17:45:27 +0000 (UTC) Gianfranco Costamagna
<costamagnagianfranco at yahoo.it> wrote:
> according to [1] there might be no fix.
> 

This may not be a permanent fix, but Debian could take up the "dual-abi"
idea that gcc upstream does with their libstdc++.so.6.

Example:

$ nm -D /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | c++filt | grep
std::locale::name
000000000009e300 T std::locale::name[abi:cxx11]() const
00000000000b8900 T std::locale::name() const

For reference, the un-beautified symbol names are

000000000009e300 T _ZNKSt6locale4nameB5cxx11Ev
00000000000b8900 T _ZNKSt6locale4nameEv


The symbol is exported twice, once with the new ABI and once with the
old. If someone™ figured out how to make the gcc compiler do that, boost
(and other libraries') maintainers could adapt those flags when
compiling with gcc, so we don't generate a vendor lock-in.

If we could make those "Dual-ABI compile flags" the default on
gcc-compiled libraries, clang upstream should have enough time
implementing [abi:cxx11] and remain usable in Debian.

- Danny



More information about the Pkg-llvm-team mailing list