Building clang/cling 3.5 for ROOT on Lion
jonesc at hep.phy.cam.ac.uk
Tue Apr 8 03:02:52 PDT 2014
> You can actually use libc++ all the way back to 10.6 (with the libcxx
> port). The trick is that if you build root against libc++, then every
> library it uses via a C++ API must also be built against libc++, and
> likewise for every library that uses it via a C++ API.
Yes, but that doesn't help here, as the libc++ on 10.6 does not support
c++11 fully. See below.
> It sounds like root wants to use bundled copies of all its dependencies,
> which while suboptimal for all the usual reasons, does at least solve
> that side of the problem. I don't know if root exposes a C++ API for its
> dependents, but if it does, they could also be made to use libc++.
Not really. ROOT will use external dependencies just fine.
Its just ROOT6 has moved to a new interpreter based on clang, 'cling',
and to build this ROOT6 does internally build parts of a clang release,
which currently is I believe based on clang 3.5. They have also decided
to fully embrace c++11 (I good thing) but this means root6 now only
supports compilers that fully support c++11. That can be libc++ or
libstdc++ (ROOT6 builds fine with gcc 4.8 on linux), it just has to be
fully c++11 compliant...
More information about the macports-dev