OS X is indeed a rather nasty Unix platform right now because Apple in the midst of a long drawn out transition away from GCC. They are shipping a completely outdated GCC and an obsolete libstdc++, yet most libraries are still compiled with that ancient libstdc++.
I tried to use LLVM's libc++ instead but I had to recompile so many libraries and make sure the dynamic linker actually picks them up that it was just too big of a hassle. I don't see light at the end of that tunnel right now.
I'm thinking of giving Linux another try as a development platform.
Apple really follows the tradition of commercial UNIX: An ugly thrown together pile of shit as userland and third party libraries. It's worse now with their fear of GPLv3. But even before GPLv3 there were issues. Sometimes you had to wonder where Apple even got the source for such ancient tools. There were security bugs that had been fixed in *BSD or GNU 10 years earlier.
They are shipping a heavily modified GCC that originally was forked in 2008. The version of GCC they ship is entirely based on LLVM via Clang and is intended to be a hold-over for everything to transition to Clang over LLVM.
I tried to use LLVM's libc++ instead but I had to recompile so many libraries and make sure the dynamic linker actually picks them up that it was just too big of a hassle. I don't see light at the end of that tunnel right now.
I'm thinking of giving Linux another try as a development platform.