2013-10-24 4 views
1

Я использую Sublime Text 2 с SublimeClang. После обновления до Mavericks/Xcode 5 SublimeClang перестала работать. Статический анализатор, который вызывает командную строку clang, все еще работает нормально, но фоновая диагностика продолжает жаловаться, что не может найти iostream.Получить SublimeClang для работы с OSX 10.9 Mavericks/Xcode 5

ответ

1

Кажется, что Apple обновила clang в Xcode 5, и они также отклонили путь /usr/include. По какой-то загадочной причине новый libclang.dylib в Xcode 5 не распознает путь включения по умолчанию; он по-прежнему пытается найти /usr/include и usr/include/c++ для системного заголовка.

После проверки с cpp -v, я понял, что они включают пути должны быть включены в список аргументов при вызове clang_parseTranslationUnit:

-I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/ 
-I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1 
-I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/5.0/include 
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include 

Я не могу поставить эти аргументы в разделе «Параметры» SublimeClang.sublime-settings, так как он будет переопределен sublimeclang_options каждого проекта. Поэтому я добавил их в раздел additional_language_options.

Теперь SublimeClang может, наконец, работать, а не идеальное решение. У кого-нибудь есть лучшие решения?

2

У меня была та же проблема. Я решил это решить, переустановив инструменты командной строки Xcode.

я запустил эту команду в моем терминале:

xcode-select --install 

После этого, казалось, SublimeClang работать снова.

Смежные вопросы