Outils pour utilisateurs

Outils du site


prog:cppcheck

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
prog:cppcheck [2017/06/25 18:44] – Création rootprog:cppcheck [2021/04/11 21:18] (Version actuelle) – Ajout de "cmake" root
Ligne 1: Ligne 1:
-En ligne de commande, c'est+{{ :prog:cppcheck:cppcheck-1.88-x64-setup.msi |Archive v1.88 x64}} 
 + 
 +===En ligne de commande=== 
   cppcheck --inconclusive --enable=all -Idossier . -j 8 &> cppcheck.log   cppcheck --inconclusive --enable=all -Idossier . -j 8 &> cppcheck.log
  
Ligne 12: Ligne 15:
 Par défaut la configuration utilise ''%%--%%library=std.cfg''. Mais il y a de nombreux autres cas qui peuvent être intéressant à étudier : gtk, qt, … Par défaut la configuration utilise ''%%--%%library=std.cfg''. Mais il y a de nombreux autres cas qui peuvent être intéressant à étudier : gtk, qt, …
  
 +===cmake===
 +
 +S'intègre parfaitement avec [[prog:cmake|CMake]].
 +
 +Il faut commencer par activer l'option ''set(CMAKE_EXPORT_COMPILE_COMMANDS ON)''.
 +
 +Puis lancer la génération des fichiers ''Makefile'' avec ''%%CC="clang" CXX="clang++" cmake -S . -B build%%'' pour générer également le fichier ''compile_commands.json''.
 +
 +<code bash>
 +cppcheck --enable=all --project=compile_commands.json --error-exitcode=1 --inline-suppr --template="{file},{line},{severity},{id},{message}" --suppressions-list=../.cppcheck-suppressions
 +</code>
 +
 +Il est important de personnaliser le message template pour afficher le code d'erreur ''id''.
 +
 +Exemple de fichier de suppression:
 +
 +<code txt .cppcheck-suppressions>
 +unusedFunction:*/cpp/boost/executor/executor.cpp
 +unusedFunction:*/cpp/attribute/restrict1.c
 +</code>
prog/cppcheck.1498409049.txt.gz · Dernière modification : 2017/06/25 18:44 de root