dbusmenu-qt5 build failure on 10.7 and 10.8 buildbots because of using libstdc++

Mojca Miklavec mojca at macports.org
Thu Oct 6 05:35:41 PDT 2016


On 6 October 2016 at 14:17, Ryan Schmidt wrote:
>> On Oct 6, 2016, at 6:26 AM, Mojca Miklavec wrote:
>> On 6 October 2016 at 12:06, René J.V. Bertin wrote:
>>> On Thursday October 06 2016 04:35:02 Ryan Schmidt wrote:
>>>
>>>> If a port requires C++11 / libc++, include the cxx11 1.0 portgroup.
>>>
>>> I wonder if that shouldn't simply be done by the Qt5 PortGroup then ...
>>>
>>> I don't really follow what that portgroup does. Is there a risk of breaking anything when including it de-facto on 10.7+?
>>
>> qt5 (base and some other ports) still works on 10.7 without libc++
>> being set globally. If one would include the cxx11 portgroup, these
>> ports would fail to install as well.
>>
>> But it would probably help if you would use libc++ instead of libstdc++.
>
> I don't understand... Those two paragraphs seem contradictory. You say it works without libc++, and that forcing libc++ would cause the ports to fail (on vanilla OS X < 10.9), but then you say it would help to use libc++.

It works without https://trac.macports.org/wiki/LibcxxOnOlderSystems
(= setting libc++ to become your default stdlib globally). But the
port in question most likely still needs libc++.

Read as: if you use the cxx11 PortGroup and use a default installation
of MacPorts, the port won't compile. But you can still require libc++
for this individual port and it might compile and work.

Using the cxx11 PortGroup is desired/absolutely needed when a port has
many dependencies that need a compatible stdlib as the app would crash
otherwise. It is not needed for "standalone" apps that don't need to
communicate to their dependencies via some C++ API (or when
dependencies use the same stdlib, like qt5 which switched to libc++
anyway).

Mojca


More information about the macports-dev mailing list