LINUX.ORG.RU

Статистика warning'ов при сборке проекта на C++

 , ,


1

4

Есть ли утилита, которая умеет генерировать файл/отчёт в удобном для чтения формате по warning'ам во время сборки проекта? Сейчас есть проект который собирается с помощью cmake, при сборке проекта (debug) используются следующие флаги:

-Wall -Wextra -Wshadow -Wnon-virtual-dtor

В идеале данная утилита должна уметь парсить warning'и g++, и группировать их по критичности, после чего должен получаться отчёт (в идеале ещё чтобы отдельно сообщалось о новых warning'ах).

Сейчас в проекте слишком много warning'ов (знаю что плохо, но пока нет возможности их поправить), при сборке проекта просто нереально заметить какой-то новый warning.

Кстати может быть есть ещё must-have флаги при debug сборке с помощью g++?

Статистику и самому можно собирать. Билдлог в файл, потом скриптом отгрепаешь всё ненужное.

Кстати может быть есть ещё must-have флаги при debug сборке с помощью g++?

-Wl,--no-undefined, если shared библиотеки собираешь.

a1batross ★★★★★
()

Я видел только велосипеды пока что.

Можно посмотреть сможет ли в то, что ты хочешь - sonarqube, но это видимо из пушки по воробушкам.

pon4ik ★★★★★
()
Ответ на: комментарий от pon4ik

Можно посмотреть сможет ли в то, что ты хочешь - sonarqube, но это видимо из пушки по воробушкам.

Спасибо за наводку, ознакомлюсь ближе. Будет прикольно если такую штуку можно будет как-то прикрутить к Team City.

но это видимо из пушки по воробушкам

Не без этого конечно.

penetrator3000
() автор топика
Ответ на: комментарий от RazrFalcon

Сижу на CLion'e, не охота переходить.

Да и желательно чтобы «утилита» работала везде, т.к. приложение (не для себя) собирается на билд сервере, а о чужих warning'ах, особенно новых, знать хочется.

penetrator3000
() автор топика

Пофикси все варнинги, будь мужиком.

ncuxer
()

Сон разума рождает чудовищ

Пофикси те ворнинги, которые требуют фикса. Убери все остальные правильным подбором ключей компиляции. Всё остальное от лукавого.

Crocodoom ★★★★★
()
Ответ на: комментарий от andreyu

Думал о чём-то подобном, но не уверен что получится запилить что-то адекватное даже для собственного использования.

Вообще я тут вспомнил что есть прекрасный язык программирования Python, видимо с ним придётся развлекаться если дойдут руки

penetrator3000
() автор топика
Ответ на: комментарий от vromanov

Справедливости ради, насколько я помню - в тимсити тоже был плагин.

Но тимсити либо для дюже богатых проектов, либо для тех кто ещё только начал себе норм окружение делать. А так да, лучше jenkins или gitlab ci какой нить.

pon4ik ★★★★★
()
Ответ на: комментарий от vromanov

Я бы сказал так - он вмеру убог, но подкупает изкоробочностью, повторяемостью и глубокой интеграцией в сам гитлаб.

Несомненно кастомный конфиг на дженкинсе будет круче, а на билдботе - ещё круче, но денег ты туда вложишь сравнимо с коммерческой версией tc. А в gitlab-ci добавление на ci нового типового проекта почти ничего не стоит, пока ты работаешь в рамках предложенных вариантов рабочего процесса.

Это как выбрать ide в замен пердолинга с vim/emacs. Решение будет не таким гибким, но сильно повторяемым (в плане посадить нового человека за от же рабочий процесс).

pon4ik ★★★★★
()

Ну напиши ты парсер, например, на perl. Если уж нужно. На разработку день максимум убьёшь.

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от DELIRIUM

А на поддержку? А если его завтра камаз собьёт - охота тебе будет в недокументированном лясике разбираться?:)

pon4ik ★★★★★
()

в jenkins проект добавь, для кого его админы поднимали? там есть warning plugin

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.