Поскольку переменная сценария Xcode отсутствует для «текущей директории проекта», как вы можете создать элемент меню сценария для запуска анализатора Clang Static Analyzer в текущем проекте из Xcode?Использование Clang Static Analyzer из XCode
ответ
Из пункта меню XCode сценария «Edit Scripts пользователя» введите следующий скрипт:
#!/bin/bash
result=$(osascript << END
tell application "Xcode"
tell active project document
set projectPath to path as string
end tell
end tell
return projectPath
END
)
cd "$result"
/Developer/clangchecker/scan-build -k -V xcodebuild -configuration Debug -sdk iphonesimulator3.0
Очевидно, что вам нужно будет настроить путь к вашей установке, в Clang, и приспособиться к версии SDK, который вы используете.
Не забудьте сделать «Очистить все» непосредственно перед использованием scan-build или результаты могут быть неполными.
Я считаю, что переменная окружения $ {PROJECT_DIR} - это то, что вы хотите для каталога проекта, выполняющего сценарий фазы сборки.
$ {PROJECT_DIR} будет работать в сценарии фазы сборки, да, но не в пользовательском скрипте, который может быть запущен из меню сценария. – mmc
Да, ваш вопрос был очень ясен. Сожалею. Вы могли бы создать цель clang в своем проекте (это то, что я обычно делаю). Не так чисто, как скрипт меню (и вам, разумеется, нужно создать его в каждом проекте), но он работает хорошо. –
Ах, ха! Я даже не думал о создании отдельной цели. Полагаю, много разных способов приблизиться к этому. – mmc
FYI, Xcode 3.2 (только Leopard Snow Leopard), включает в себя анализатор Clang Static Analyzer в меню «Сборка и анализ».
http://iosdevelopertips.com/xcode/static-code-analysis-clang-and-xcode-3-2.html
Один недостаток Xcode 3.2 (в сторону от него работает только на Snow Leopard) является то, что v2.x Имитаторы, кажется, не работать - на самом деле, я видел сообщения о том, что v2. x не поддерживаются вообще.
- 1. Использование Clang Static Analyzer в Eclipse CDT
- 2. трудности с Xcode Static Analyzer с изображением
- 3. Сообщить о Clang Static Analyzer о сторонних библиотеках, владеющих ссылками
- 4. Использование внешнего Xcode Clang статический анализатор двоичный, с дополнительными проверками
- 5. Есть ли какие-либо анализаторы Clang Static Analyzer для вопросов sqlite?
- 6. Достаточно ли анализатора Clang Static?
- 7. Clang Analyzer ложный положительный или переполненный?
- 8. Xcode Analyzer - Игнорировать цели CocoaPods
- 9. XCode Analyzer Reporting Garbage Ob
- 10. Использование LLVM Clang 2.6 с Xcode 3.2
- 11. Статический анализатор Clang для xcode для чайников
- 12. Проблема при настройке clang static analzer
- 13. Создание отчетов с помощью Clang Analyzer - scan-build
- 14. Xcode: добавление теста, который не работает, когда есть предупреждения или ошибки Static Analyzer?
- 15. Xcode Clang автобус 10
- 16. Ошибка сборки Xcode clang
- 17. Xcode 7: Clang: error
- 18. xcode clang error
- 19. Использование неразрешенного идентификатора 'Static'
- 20. Xcode 3.2.4 Analyzer пропустил этот файл?
- 21. XCode: «Analyzer пропустил этот файл из-за ошибок синтаксического анализа»
- 22. clang-analyzer-alpha.unix.PthreadLock проверка отсутствует в clang-tidy версии 3.8 и 4.0?
- 23. Xcode/clang, включая неправильный файл
- 24. Xcode debugger static member variables
- 25. iOS clang: error Xcode 7.3.1
- 26. iOS - Xcode 5 Ошибка Clang
- 27. Использование @import от clang?
- 28. lexical analyzer
- 29. Использование Static Wrapper Class
- 30. Использование Clang как API
Каждый раз, когда я запускаю этот скрипт, я должен перезапустить Xcode, чтобы запустить его снова. Зачем? Есть ли способ запустить сценарий дважды без перезапуска? Это не позволит мне снова называть это! – 2009-09-03 12:07:53
Хммм .... У меня никогда не было этой проблемы ... ОДНАКО: эта функция встроена в XCode 3.2, я просто обновляюсь и вообще забываю этот сценарий. – mmc