После того, как я обновил свою Mac OS X до Mountain Lion (начиная с Snow Leopard) и до XCode 5 (начиная с XCode 3.2), я больше не могу создавать проект C ++, который я использовал для успешной сборки в XCode. Я получаю кучу ошибок, теперь все говорят: «Проблема разбора: неизвестное имя типа *» для разных объектов. Я попробовал старую версию XCode (4.6) и установил SDK на Mac OS X 10.7. Эта проблема была решена, но не использование последней версии XCode вызвало другие проблемы.
Чтобы быть точным, ошибки (по крайней мере, первые), похоже, связаны с графической библиотекой Carbon. Я не знаю, имеет ли это значение. Я знаю, что Carbon каким-то образом устарел, но официальный выпуск приложения, которое я расширяю, работает на Mac OS 10.8, поэтому я удивляюсь, почему я не могу собрать код на 10.8.
Что может быть причиной этой ошибки? Код большой и не написан мной, поэтому менять его нельзя. Мне действительно нужно собрать его на XCode 5, иначе я должен понизить версию своей ОС!
Некоторые вещи, которые долгое время считались устаревшими в Carbon, были окончательно удалены в Mac OS X 10.7 SDK.
Вам понадобится Mac OS X 10.6 SDK для сборки вашего проекта. Apple автоматически прекратила включение старых SDK с новыми версиями Xcode, но вы можете загрузить более старые версии Xcode (с сайта разработчика Apple), и одна из них … возможно, Xcode 4.3 или около того … будет иметь 10,6 SDK.
Чтобы использовать более старый SDK с более новым Xcode, вы должны установить его вручную. Правильное местоположение:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
Также обратите внимание, что любое обновление до XCode (например, обновление, загруженное из App Store) приведет к стиранию установленных вручную SDK. Я рекомендую архивировать те, которые вам нужны, где-то еще, чтобы вы могли заменить их по мере необходимости.
Других решений пока нет …