Bug 1546704
Summary: | Define _GLIBCXX_USE_CXX11_ABI gets ignored by gcc in devtoolset-7 | ||
---|---|---|---|
Product: | Red Hat Developer Toolset | Reporter: | Christian Hägele <haegele> |
Component: | gcc | Assignee: | Marek Polacek <mpolacek> |
Status: | CLOSED CANTFIX | QA Contact: | Martin Cermak <mcermak> |
Severity: | medium | Docs Contact: | |
Priority: | unspecified | ||
Version: | DTS 7.1 RHEL 7 | CC: | barthelemy, fweimer, haegele, jakub, kanderso, law, mcermak, mnewsome, ohudlick, tstellar |
Target Milestone: | alpha | ||
Target Release: | 7.1 | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2018-02-19 11:08:00 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Christian Hägele
2018-02-19 11:05:43 UTC
We've tried hard, but it is not possible to support this, neither on RHEL6 nor on RHEL7, which is why it is forcefully disabled. It will work in RHEL8 (and be the default there as well). Could it be clarified if it is any different for devtoolset-9 on RHEL7? In our case: -When compiling with -D_GLIBCXX_USE_CXX11_ABI=0, we get some crash/memory corruption when using some recent version of (externally built) libraries that disappear without _GLIBCXX_USE_CXX11_ABI defined. Which would indicate there is a way to make g++ use the 'new' std::string implementation. -But when trying to rebuild a library previously built with GCC 4.8 or 7.3 or RHEL with gcc9.3 of RH7/devtoolset-9, the library seems to be compiled with the old std::string implementation So, if i understand correclty, RHEL7/devtoolset-9 is not able to generate code for that contians the new implementation (because RHEL7's base libc++ doesn't know it?), but will try by default to link to external libraries with the newest implementation? |