#38814: libstdcxx and binaries linked against it can have conflicting emutls (one copy in libstdc++.dylib and one copy in libgcc_s.dylib) ------------------------+------------------------ Reporter: howarth@… | Owner: jeremyhu@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: libstdcxx | ------------------------+------------------------ Comment (by jeremyhu@…): Without being able to look at how FSF implements emutls (due to it being GPL3), I can only assume that the issue here is that one copy registers some data in its TLD and the other copy is trying to find that data in its TLD. It therefore misses, and the application crashes. This would similarly be the case if you tried to cross between gcc46's libgcc_s.dylib and gcc47's libgcc_s.dylib's emutls support. Thus I think the best solution is probably to have libstdc++.dylib link against a dynamic libgcc runtime instead of statically. That being said, I don't think that libgcc should be provided by the libstdcxx port. It should be provided by a libgcc subport. I will wait to do this work until after gcc48 is stable and gcc49 is added to MacPorts. -- Ticket URL: <https://trac.macports.org/ticket/38814#comment:9> MacPorts <http://www.macports.org/> Ports system for OS X