Добавих всичко към моя $PATH
и промених своя SConstruct
, за да задам подходящите променливи на средата, според тези отговори [ 1, 2, 3 ]. Сега, когато бягам
scan-build --use-c++=`which clang++` scons
изграждането започва и мога да видя процеса, разклонен от scons
/path/to/c++-analyzer ... -std=c++11 ...
Обектният файл се изгражда успешно, но след това получавам грешка:
could not find clang line
Тази грешка възниква в c++-analyzer
, когато раздвоеният процес не съдържа низа -cc1
. Но ако проверя ps aux
, виждам ясно
/path/to/clang -cc1 ...
Как може програмата да се изгради правилно, но статичният анализатор да се провали по този начин?
За справка, ако стартирам ръчно
scan-build clang++ <parameters from scons>
тогава изграждането е успешно и отчетът се генерира!
Мога и да "измамя" чрез добавяне
env["ENV"]["PATH"] = os.environ["PATH"]
и след това бягане
CXX="scan-build clang++" scons
Просто не мога да стартирам scan-build
на самия scons
с немодифициран SConstruct
.
--use-analyzer
не е призната опция заscan-build
. - person chrisaycock   schedule 16.03.2013--use-analyzer
. Все още получавам същата грешка. Благодаря все пак. - person chrisaycock   schedule 26.03.2013