dbusmenu-qt5 build failure on 10.7 and 10.8 buildbots because of using libstdc++
Ryan Schmidt
ryandesign at macports.org
Thu Oct 6 05:43:13 PDT 2016
> On Oct 6, 2016, at 7:35 AM, Mojca Miklavec <mojca at macports.org> wrote:
>
> 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).
You're right. You should only force libc++ (without using the cxx11 portgroup) if the port
a) requires C++11 (or for some other reason requires libc++), and
b) does not depend on any C++ libraries, and
c) does not provide any C++ libraries
Is that the case for Qt5? It is the case for mongodb, so I've done it there. Qt5 provides tons of libraries that other programs are expected to use, and they seem to link to the C++ library, so I don't think we can just force Qt5 to libc++ and hope things will work; they won't.
More information about the macports-dev
mailing list