В общем суть вопроса в том, какие версии и стандарты С++ представляются в той или иной форме версий библиотек libstdc++
К примеру есть вывод
[root@nightmare bin]# strings /lib/libstdc++.so.6 | grep GLIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBC_2.3
GLIBC_2.0
GLIBC_2.4
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.3.2
GLIBC_2.2
GLIBCXX_DEBUG_MESSAGE_LENGTH
Как узнать какие версии компиляторов использовать для достижения совместимости с библиотекой libstdc++? Возможно ли включить libstdc++ статически в библиотеку? (-static-libstdc++ не работает, проверял)
Было бы не плохо собрать всю информацию воедино, скажем так, в табличку, и по ней ориентироваться. Свою библиотеку я компилирую g++ 8 версии, который требует GLIBCXX_3.4.20 и GLIBCXX_3.4.21, плюс к тому же еще какой то CXXABI_1.3.9 (?). Как и чем мне компилировать свою библиотеку что бы минимизировать изменение самого кода библиотеки и была совместимость с вышеуказанным libstdc++