Question about compiler blacklisting (llvm-gcc for wxWidgets)

Ryan Schmidt ryandesign at macports.org
Thu Nov 2 19:20:43 UTC 2017


On Nov 2, 2017, at 14:08, Joshua Root wrote:

> On 2017-11-3 05:39 , Ryan Schmidt wrote:
>> 
>> On Nov 2, 2017, at 13:00, Joshua Root wrote:
>> 
>>> The reason for the ABI incompatibilities is, AIUI, that before C++11 the
>>> C++ standard did not specify an ABI. So theoretically mixing libc++ and
>>> libstdc++ works just as well whether you are on Linux or macOS -- that
>>> is to say, if everything is a new enough version to be C++11 compliant
>>> and you use it in that mode, it should work.
>>> 
>>> If, OTOH, you try any mix involving a pre-C++11 stdlib (like the system
>>> libstdc++ on macOS), it won't work.
>> 
>> So what do you think about what the cxx11-1.1 portgroup is doing?
> 
> Which part? If you mean using the old ABI, I guess it makes some sense
> to maintain compatibility with the system libstdc++ on those platforms
> where it is the default. Not sure how many ports use C++11 but link with
> system libs that use C++, or with other ports that use C++ < 11.

The part where it allows a port to be compiled with MacPorts libstdc++. Why is this ok? Didn't we used to have the problem that C++ software compiled with gcc would crash because it used new gcc libstdc++ but a library it used was using OS X's old libstdc++? Why is that no longer a problem with this portgroup?



More information about the macports-dev mailing list