[Interest] Is _GLIBCXX_USE_CXX11_ABI=0 defined in pre-build versions of Qt?

Sérgio Martins iamsergio at gmail.com
Thu Jun 22 13:36:44 CEST 2017


On Thu, Jun 22, 2017 at 11:58 AM, Oleksiy Balabay
<oleksiy.balabay at gmail.com> wrote:

> Gcc ABI was significantly changed between 4.x and 5.x. If you try to link
> application with third-party library that was compiled with an older version
> of GCC then you get linker errors about undefined references to symbols that
> involve types in the std::__cxx11 namespace. The problem is related to
> https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html
>
> But the same Qt pre-build binary distribution from the official site for
> Linux links correctly with gcc 5.x and gcc 4.x.
>
> How to get the same result with other 3rd-party libraries? How the problem
> of different gcc ABI is resolved? Is _GLIBCXX_USE_CXX11_ABI=0 defined for Qt
> pre-build version that is available to download?

I don't think Qt uses _GLIBCXX_USE_CXX11_ABI=0. It shouldn't even
care, since Qt doesn't use std:: in it's ABI.

Can you show us the linker errors that are related to Qt ?


Regards,
Sergio Martins



More information about the Interest mailing list