static analysis of C/C++ code
Go to file
Robert Reif 31a18b9b23 convert CheckClass::noMemset to use new variable lookup capability 2011-02-26 16:00:05 -05:00
Cppcheck.xcodeproj Adapted Xcode project for version 1.45 and Xcode 3.2.4 2010-10-21 22:57:06 +02:00
cli Merge branch 'cmdline-suppress' 2011-02-23 21:34:09 +13:00
externals/tinyxml Don't use relative paths in tinyxml.pri. 2010-12-18 16:29:58 +02:00
gui Fixed #2575 (false positive: Preprocessor does not ignore #include within #if 0 block) 2011-02-26 10:04:38 -08:00
htdocs Web: Add short paragraph about documentation 2011-02-03 21:23:03 +01:00
htmlreport Fixed some spelling mistakes 2010-12-15 18:45:53 +01:00
lib convert CheckClass::noMemset to use new variable lookup capability 2011-02-26 16:00:05 -05:00
man add documentation for --suppress= option 2011-02-23 20:59:30 +13:00
rules Add a few more rules 2011-02-02 20:08:03 -06:00
scripts scripts: added tabs.pl - in my opinion it is bad to use tabs inside string constants. spaces or \t should be used instead. 2011-02-05 12:53:28 +01:00
test Fixed #2031 (Tokenizer: simplify known value (string has known value after strcpy)) 2011-02-26 21:11:56 +01:00
tools GCC: Disabled the -Wsign-conversion. It is quite noisy. 2011-02-17 22:28:36 +01:00
win_installer 1.47: Updated versions 2011-02-06 12:05:42 +01:00
.gitignore Add .obj files to gitignore. 2011-02-05 23:46:10 +02:00
AUTHORS add self to authors file 2011-02-16 23:02:37 +13:00
COPYING Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
Changelog 1.47: Updated Changelog 2011-02-06 12:12:45 +01:00
Makefile Makefile: updated with dmake 2011-02-17 22:32:22 +01:00
build-pcre.txt renamed build.txt to build-pcre.txt 2011-02-14 21:11:06 +01:00
build.bat Add "all" target for build.bat. 2010-01-09 13:54:56 +02:00
cppcheck.cbp Update codeblocks project file 2010-10-18 21:30:12 +03:00
cppcheck.cbproj Borland C++: Updated project file 2011-02-18 20:22:09 +01:00
cppcheck.cppcheck Ticket #2522 (update project files to fix missing include messages) 2011-01-31 22:18:16 +02:00
cppcheck.sln Borland C++: Fixed compiler errors 2010-12-31 10:24:51 +01:00
cppcheck_vs2010.sln Add x64 build targets for VS 2010. 2010-10-26 19:32:07 +03:00
createrelease createrelease: updated the instructions 2011-02-06 12:52:52 +01:00
doxyfile doxygen: enabled the JAVADOC_AUTOBRIEF so the @brief isn't required 2010-03-17 21:29:45 +01:00
generate_coverage_report coverage report script: Extract only relevant data from the .info file. 2010-06-01 15:21:29 -03:00
readme.txt Renaming HAVE_DEPENDENCIES to HAVE_RULES 2011-02-14 19:50:16 +01:00
readme_64-bit_Windows.txt Fixed some spelling mistakes 2010-12-15 18:45:53 +01:00
readme_gui.txt Upate QT framework's URL to readme. 2009-09-06 10:57:21 +03:00
runastyle Add check to runastyle to enforce correct astyle version usage. 2011-02-11 23:37:38 +02:00
runastyle.bat Astyle: add option to convert to linux EOLs. 2011-02-09 14:13:37 +02:00
testrunner.cbproj Borland C++: Updated project files 2010-07-19 21:29:39 +02:00
webreport.sh webreport: detect duplicate code 2010-04-03 14:16:29 +02:00

readme.txt

=========
Cppcheck
=========


About

    The original name of this program is "C++check" but it was later changed to "cppcheck".

Manual

    A manual is available online:
    http://cppcheck.sf.net/manual.pdf

Compiling

    Any C++ compiler should work.

    To build the GUI, you need Qt.

    To build the command line tool, no dependencies are required. However for
    the handling of rules, PCRE is needed.

    There are multiple compilation choices:
      * qmake - cross platform build tool
      * Visual Studio - Windows
      * gnu make
      * g++

    qmake
    =====
        You can use the gui/gui.pro file to build the GUI.
            cd gui
            qmake
            make

    Visual Studio
    =============
        Use the cppcheck.sln file.

    gnu make
    ========
        make

    g++ (for experts)
    =================
        If you just want to build Cppcheck without dependencies then you can use this command:
            g++ -o cppcheck -Ilib cli/*.cpp lib/*.cpp

        If you want to use --rule and --rule-file then dependencies are needed:
            g++ -o cppcheck -lpcre -DHAVE_RULES -Ilib -Iexternals cli/*.cpp lib/*.cpp externals/tinyxml/*.cpp
    mingw
    =====
        make LDFLAGS=-lshlwapi

Cross compiling Win32 (CLI) version of Cppcheck in Linux

    sudo apt-get install mingw32
    make CXX=i586-mingw32msvc-g++ LDFLAGS="-lshlwapi"
    mv cppcheck cppcheck.exe

Webpage

    http://cppcheck.sourceforge.net/