[MacPorts] #71601: cmake @3.29.5_0: dyld: lazy symbol binding failed: Symbol not found: __ZNSo9_M_insertIeEERSoT_ on 10.5 ppc with libgcc14
MacPorts
noreply at macports.org
Sat Dec 21 20:33:13 UTC 2024
#71601: cmake @3.29.5_0: dyld: lazy symbol binding failed: Symbol not found:
__ZNSo9_M_insertIeEERSoT_ on 10.5 ppc with libgcc14
-----------------------+-----------------------------------------
Reporter: rmottola | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: ppc leopard tiger legacy-os
Port: cmake |
-----------------------+-----------------------------------------
Comment (by kencu):
I do remember a few things I read about this error over the years.
I believe:
1. It has to do with the change moving to c++11 for copy-on-write strings.
2. the functions were changed in the CXX11 ABI to do this properly
3. a dual-ABI functionality was maintained to allow interaction with
software written for pre-c++11 libraries and executables.
<https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html>
4. duplicates of some functions (like the facet functions, for example)
were written, one for each ABI ({{{_GLIBCXX_USE_CXX11_ABI=0
_GLIBCXX_USE_CXX11_ABI=1}}}).
5. these duplicates exist but are really very rarely tested for
{{{_GLIBCXX_USE_CXX11_ABI=0}}} any more
6. the c++ standard being set by the build affects how these functions are
exposed or hidden
In the gcc source tree, and in the gcc bug tracker, various hits come up
when you search these terms.
Jonathan Wakely 's name seem to come up a lot when I read about this.
--
Ticket URL: <https://trac.macports.org/ticket/71601#comment:20>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list