llvm-3.5 on 10.7.5

Ryan Schmidt ryandesign at macports.org
Wed Feb 26 15:32:34 PST 2014


On Feb 26, 2014, at 16:12, Brandon Allbery wrote:

>> Does it mean that llvm-3.5 does not work on 10.7?
> 
> By itself, it works fine. The problem is that it is never by itself; it exists in an ecosystem whose contents are defined by Apple. On 10.7 that ecosystem is not C++11, and while you can build a C++11 ecosystem of your own it is not compatible with anything else. In particular it is not compatible with any C++ libraries provided by Apple as part of the base system or Xcode, and if you ever try to use an Apple-compatible C++ library with it you will get link errors or possibly crashes.
> 
> After playing whack-a-mole for a while trying to get stuff to coexist, MacPorts has given up and acknowledged that the only thing that works reliably is to go with what is compatible with Apple libraries; that means only older llvm that uses pre-C++11 interfaces (provided by libstdc++ or an Apple-sourced compatible libc++) on pre-10.9 and only newer llvm that uses C++11 interfaces (provided by modern libc++ but not the libc++ shipped on older OS X) on 10.9. Any other combination *might* work if you are lucky but is not guaranteed in any way, and MacPorts no longer supports it.

Them’s some good words there, Bradley. Do you feel up to turning it into a FAQ entry? It’s a complicated thing to explain to people and it would be great if there were a central explanation we could refer people to.



More information about the macports-users mailing list