Системный компилятор gcc-4.2.1 является (очень старым) наследием перехода от компиляторов gcc к clang.Он никогда не должен использоваться для вашего собственного кода.Отредактируйте ваш .profile
или .tcshrc
, чтобы добавить новый каталог gcc к пути.Или сэкономьте много времени и энергии и используйте MacPorts .
К сожалению, Clang установил «абсолютную» совместимость с gcc-4.2.1: см .: clang -E -dM - < /dev/null | grep GNU
Это не плохо.Как только компилятор набирает обороты, он предоставляет собственные расширения и больше не отслеживает их.Многие расширения остаются совместимыми, как Intel <x86intrin.h>
.Ни один из компиляторов не слишком заинтересован в том, чтобы обеспечить слишком большое расхождение с расширениями ...
По словам MacPorts, "стабильный" gcc теперь равен 8.2.0
.Устойчивый лязг MacPorts (который раздраженно конфликтует с OS X), по-видимому, 7.0.0
... короткая история - не ходите произвольно заменять наборы файлов, которые, по вашему мнению, могут работать.Затем настройте пути правильно - IIRC, MacPorts сделает это за вас.
Я предоставил более свежую сводку: здесь .