Создание отчетов с помощью Clang Analyzer — сканирование-сборка

Я новичок в анализаторе Clang и пытаюсь генерировать отчеты с помощью scan-build. При использовании сканирования-сборки, как показано ниже:

./scan-build --use-analyzer=/build/Debug+Asserts/bin/clang -v  -o report_location sample.xcodeproj

Я всегда получаю следующую ошибку:

scan-build: Using `/build/Debug+Asserts/bin/clang' for static analysis ; Can't exec "sample.xcodeproj": 
Permission denied at ./scan-build line 1029. ;
scan-build: Removing directory 'report_location/2013-06-25-1' because it contains no reports. ;
scan-build: No bugs found.

Пожалуйста, помогите мне решить эту проблему.


person Karthikeyan P    schedule 26.06.2013    source источник


Ответы (1)


То, как работает сборка сканирования, это либо

  1. вызывает команду, которую вы предоставляете, например. make
  2. выполняет файл, который вы предоставляете, например. какой-то шелл-скрипт

И когда он это делает, он переопределяет переменную среды $CC, чтобы указать на другой скрипт, из которого он разветвляет два процесса. В одном компилятор работает как обычная сборка, а в другом запускается статический анализатор для генерации отчета.

Вы получаете эту ошибку, потому что «sample.xcodeproj» не является исполняемым файлом. Я не очень хорошо знаком с xcode, но я думаю, что если вы chmod +x sample.xcodeproj, то все должно работать.

clang-static анализатор также может быть интегрирован с xcode:

http://clang-analyzer.llvm.org/xcode.html

https://developer.apple.com/library/mac/#documentation/ToolsLanguages/Conceptual/Xcode_User_Guide/000-About_Xcode/about.html#//apple_ref/doc/uid/TP40010215-CH3-SW17

person A. K.    schedule 28.06.2013