Неверный отчет HTML при использовании опции -i в cppcheck

Я работаю в компании промежуточного программного обеспечения. Мы хотели бы интегрировать Cppcheck в нашу систему сборки, чтобы предотвратить ошибки и проблемы в нашем коде. Наш код большой, и он распространяется в несколько модулей (каждый модуль в своей папке). Эти модули имеют много зависимостей между ними.

При запуске cppcheck мы хотим запускать его только один раз по всему коду, чтобы дать инструменту полный обзор. Однако некоторые модули не относятся к основным, и мы хотим пропустить эти модули из анализа. Кроме того, мы реализовали API для разных языков. Так, например, у нас есть несколько модулей для C++, которые мы хотели бы проанализировать отдельно от модулей C.

В основном у нас есть два варианта: 1) вызвать cppcheck со списком модулей, которые мы хотим проанализировать, или 2) вызвать cppcheck из папки верхнего уровня кода и использовать опции -i, чтобы игнорировать все модули, которые не должны быть проанализирован.

Оба подхода прекрасно работали вплоть до создания XML-отчета. Проблема возникает при вызове cppcheck-htmlreport. Мы заметили, что не было создано ни index.html, ни stats.html. Кроме того, только некоторые результаты, отображаемые в XML, были переведены в отчеты HTML. Для многих результатов HTML-страницы не были сгенерированы.

Любая проблема с памятью может быть отброшена. Мы уже убедились в этом. Кроме того, инструмент не начинает создавать отчеты HTML на основе результатов XML, а затем останавливается. На самом деле, то, что происходит, так это то, что отчеты в формате HTML стремительно развиваются. Я имею в виду, HTML-отчет для ошибки номер 1 в XML создан, затем, возможно, следующий - номер 5, и так далее.

Мы вызвали cppcheck-htmlreport с опцией --source-code, указывающей на папку верхнего уровня кода. Я думаю, что проблема может быть вызвана этим. Я попытался вызвать cppcheck только из папки верхнего уровня без параметров -i, и затем отчеты HTML были сгенерированы без проблем. Таким образом, похоже, что XML, созданный с использованием параметров -i, не может быть правильно понят cppcheck-htmlreport. Есть ли способ предоставить опции -i для cppcheck-htmlreport? Я думаю, что это может решить проблему...

Я также заметил, что проблема возникает только тогда, когда анализируется множество модулей и кода. При анализе только нескольких модулей отчет в формате HTML был верным, хотя мы все еще называли cppcheck-htmlreport, предоставляя папку верхнего уровня как ---source-dir.

Это известная проблема в генераторе HTML cppcheck? Есть ли способ решить это? Любой совет очень ценится. Спасибо соня

0 ответов

Другие вопросы по тегам