LINUX.ORG.RU
ФорумTalks

Анализатор кода PVS-Studio на FreeBSD

 , ,


0

2

И мы снова запускаем то что нельзя там где это невозможно: на арене цирка работа с анализатором кода PVS Studio на FreeBSD! Дичь, треш, пар, жесть и угар — все как вы любите.

Если кто вдруг не знает что такое PVS Studio - это такой навороченный проприетарный статический анализатор кода, в первую очередь для проектов на Си и C++.

FreeBSD разумеется не поддерживается (о боже мой), но отлично работает линуксовая версия.

Удалось протестировать анализатором все три ключевых варианта проектов: на cmake, qt5 (qmake) и чистый make.

Загнал в анализатор 86Box, эмулятор УКНЦ и даже исходники ядра самой FreeBSD (и получил 30к предупреждений), вообщем было весело.

Статья тут.

@Andrey_Karpov_2020 авторам PVS Studio респект за отличный проект, пишите еще :)

Скрин

Перемещено shell-script из screenshots

★★★

Последнее исправление: hobbit (всего исправлений: 5)

Ответ на: комментарий от Bass

Хотелось бы почитать про Clang Static Analyzer и его новый cross-TU-анализ. И ещё про Facebook Infer.

Не знал про такое если честно, попробую собрать инфу.

И вот сравнить бы вот этих троих (вместе с clang-tidy докучи) на кодовой базе ядра — хоть Linux, хоть FreeBSD.

Думаю ядро ОС это не очень показательный проект, судя по попытке анализа ядра фри - слишком уж много false positive срабатываний. Можно устать разгребать.

Надо на небольшой кодовой базе это делать, когда кода много - больше шанс на ложное срабатывание из-за связей между частями проекта.

P.S. PVS Studio умеет анализировать файлы параллельно? Или одно ядро грузит?

Умеет, -j 8 ключ в наличии ;)

alex0x08 ★★★
() автор топика

Разве, этот самый инструмент, не встроен в компилятор?

U53R
()
Последнее исправление: U53R (всего исправлений: 1)
Ответ на: комментарий от Werenter

Ну, если гтк2 то xfce, а там в настройках внешнего вида идеальная настраивалка шрифтов. И вроде в lxde тоже вполне рабочая. Всего то покрутить размер шрифта/dpi и потом сглаживание/хинтинг/распределение субпикселей.

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

Но я то здесь вообще не про шрифт! Где панель инструментов? Где вкладки? где полосы прокрутки, строка состояния, перенос, нумерация и подсветка строки? Хоть что то, отличающее текстовый редактор от notedad.exe...

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

gsettings? А недавно включалось галочками в настройках...

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

как mord0d умудрился узнать Эльзу, если её коса почти полностью закрыта

Есть такая булка, «плетёнка» называется (с маком!). Паттерн косы Эльзы повторяет её. На видимом участке обоины он вполне различим.

Мульт я не смотрел.

mord0d ★★★★★
()

Поставил заслуженный фейспалм.

Проприетарщину, нужность которой даже на линуксе вызывает большие сомнения, ты зачем-то притащил в бздю.
Всратая тема оформления.
В Mousepad ШГ (gtk2 такой gtk2).
На обоину вообще пофиг.

(с)

Gonzo ★★★★★
()
Последнее исправление: Gonzo (всего исправлений: 1)
Ответ на: комментарий от mord0d

мульт развивает идеи из Снежной королевы Андерсена (это не cover и уж точно не remake)
так что если тебе это интересно - рекомендую

d00fy ★★★
()
Последнее исправление: d00fy (всего исправлений: 1)

За обоину отдельный огромный плюс в карму тебе, человече, ай да молодчик!

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

Почему вы думаете что это гтк2-мауспад? Судя по непереносу строк и невидимым скроллбарам - как раз гтк3-мауспад.

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

То есть когда я запускал в эмуляторе насквозь корпоративный Dell Unix или Wabi - это вопросов не вызывало?

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

https://en.wikipedia.org/wiki/Elsa_(Frozen)

Ёмаё, вот это портянка. И 164 ссылки!

Time ranked Elsa as the most influential fictional character of 2014.

Ну я и дремучий. А год то интересный был. Второй персонаж тогда тоже отжигал.

bread
()
Ответ на: комментарий от d00fy

мульт развивает идеи из Снежной королевы Андерсена

Но ведь заранее известно что бобро победит, это ж Disney.

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

Где панель инструментов? Где вкладки? где полосы прокрутки, строка состояния, перенос, нумерация и подсветка строки?

Там всё это есть, нужно только галочки в меню расставить. Вот в соседнем треде обсуждали гномовский блокнот, где всего 10 пунктов в единственном меню. Вот это блокнот так блокнот, моё почтение.

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

Нет он все правильно сделал, не ожидал такого наплыва укушенных за голову.

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

Это в смысле я не ожидал, Максим же вроде запретил с Украины заходить? Вот я и не думал что тут столько «обиженных лично Путиным» будет.

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

Ну так если до 40ка не работать а жить на чьей-то шее то можно и до 80ти пацаном пробегать )

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

ну как это что?! brutal death или grind

Грайнд без смысла, а брутал дэтх после скандинавского блэцка звучит скучно. ☺

эх, ты вот издеваешься

Я не издеваюсь, я просто люблю тяжёлую музыку. 🤷

мульт просмотра заслуживает и точка

Меня топикстартер окончательно заинтриговал, так что я его уже приобретаю. ☺

mord0d ★★★★★
()
Последнее исправление: mord0d (всего исправлений: 1)
Ответ на: комментарий от alex0x08

Вообщем собрать из среды разработки наверное как-то можно
Вообщем

Ну ldap твою налево. Тебе сколько лет?

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

Вот я и не думал что тут столько «обиженных лично Путиным» будет

Так их и не много. Раньше и модераторы через одного такие были. А сейчас тред прожил уже явно дольше 15 минут, и вас не забанили. Нравы смягчились.

bread
()
Ответ на: комментарий от mord0d

Меня топикстартер окончательно заинтриговал, так что я его уже приобретаю. ☺

Скачай с торрентов хоть раз, будь мужиком )

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

Меня топикстартер окончательно заинтриговал, так что я его уже приобретаю. 

Скачай с торрентов хоть раз, будь мужиком )

Ну вот я и преобретаю. ^_~

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

А был ли мальчик?

«В трусиках» или какой? Смотря какой.

XOXO
()
Ответ на: комментарий от alex0x08

Спасибо.

Для C++ ложноположительные, насколько понимаю, вообще стандартная практика и неизбежность.

Но CSA просто прекрасен, и, при наличии такой бесплатной альтернативы, платить деньги профессионалам из PVS смысла не вижу. На CSA башляли деньги Apple, под него большая академическая база подведена (реальные научные исследования), и на Mac OS X он в Xcode просто встроен. Ну а на Linux — из командной строки. https://github.com/Ericsson/codechecker

Про cross TU analysis: https://clang.llvm.org/docs/analyzer/user-docs/CrossTranslationUnit.html

FB Infer я ещё не щупал, но тоже интересно посмотреть.

Анализировать большую кодовую базу можно и нужно, потому что только так можно увидеть, упирается ли твой анализатор в процессор и в память.

Bass ★★★★★
()
Последнее исправление: Bass (всего исправлений: 1)
Ответ на: комментарий от Bass

платить деньги профессионалам из PVS смысла не вижу

я же так и написал в статье: если знаешь ассемблер то платить не надо )

Анализировать большую кодовую базу можно и нужно, потому что только так можно увидеть, упирается ли твой анализатор в процессор и в память.

Если занимаешься разработкой такого анализатора то наверное да, смысл такого для прикладной разработки неочевиден. Ты же сам выше заметил про ложные срабатывания, запустив анализ сразу по всей кодовой базе ты в этих срабатываниях просто утонешь. Ну и смысл тогда?

alex0x08 ★★★
() автор топика

Andrey_Karpov_2020 авторам PVS Studio респект за отличный проект, пишите еще :)

Емнип каст не срабатывает, если он добавлен после при редактировании исходного сообщения.

Так что надо еще раз кастануть =) Andrey_Karpov_2020

praseodim ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)