static analysis of C/C++ code
Go to file
Daniel Marjamäki 175503ef94 Null pointer: improved inconclusive checking in CheckNullPointer::nullPointerAfterLoop 2011-10-09 15:09:02 +02:00
Cppcheck.xcodeproj Adapted Xcode project for version 1.45 and Xcode 3.2.4 2010-10-21 22:57:06 +02:00
cli 1.51: Updated versions 2011-10-08 07:45:39 +02:00
externals/tinyxml Don't use relative paths in tinyxml.pri. 2010-12-18 16:29:58 +02:00
gui GUI: Update translation files. 2011-10-07 20:09:15 +03:00
htdocs htdocs: fix typo in error messages and php code (writeable -> writable) 2011-10-01 09:20:26 +02:00
htmlreport Fixed #3057 (cppcheck-htmlreport fails since 1.50) 2011-08-30 20:30:52 +02:00
lib Null pointer: improved inconclusive checking in CheckNullPointer::nullPointerAfterLoop 2011-10-09 15:09:02 +02:00
man manual: removed appendix. That info are available in separate articles. 2011-10-08 13:45:53 +02:00
rules Add a few more rules 2011-02-02 20:08:03 -06:00
test Null pointer: improved inconclusive checking in CheckNullPointer::nullPointerAfterLoop 2011-10-09 15:09:02 +02:00
tools Merge pull request #32 from rpavlik/qmake-configure-rules 2011-08-19 13:00:34 -07:00
win_installer 1.51: Updated versions 2011-10-08 07:45:39 +02:00
.gitignore Add .obj files to gitignore. 2011-02-05 23:46:10 +02:00
AUTHORS With the agreement of Daniel Marjamäki, I write my name in this AUTHORS file. 2011-06-11 00:03:55 +02:00
COPYING Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
Changelog 1.51: Updated Changelog 2011-10-08 07:48:29 +02:00
Makefile Makefile: Set debug mode 2011-10-08 08:06:24 +02:00
build-pcre.txt HAVE_RULES support for build.bat 2011-08-18 16:01:39 -05:00
build.bat Merge pull request #32 from rpavlik/qmake-configure-rules 2011-08-19 13:00:34 -07:00
cppcheck.cbp Update codeblocks project file to contain new files 2011-03-17 23:36:58 +02:00
cppcheck.cppcheck GUI: Rename Ignore-feature to Exclude-feature. 2011-08-23 20:44:04 +03:00
cppcheck.sln Update VS solution files for test project name change. 2011-09-26 23:54:08 +03:00
cppcheck_vs2010.sln Update VS solution files for test project name change. 2011-09-26 23:54:08 +03:00
createrelease createrelease: added info about how scp is used to upload files to release system 2011-10-08 10:16:38 +02:00
doxyfile doxygen: enabled the JAVADOC_AUTOBRIEF so the @brief isn't required 2010-03-17 21:29:45 +01:00
generate_coverage_report LCOV: updated the generate_coverage_report to avoid some redundant compiler warnings 2011-03-14 11:21:35 +01:00
readme.txt readme: added a little info about compiling without pcre 2011-04-23 08:59:54 +02:00
readme_64-bit_Windows.txt Fixed some spelling mistakes 2010-12-15 18:45:53 +01:00
readme_gui.txt GUITESTS: Add short mention of tests to gui readme. 2011-06-18 13:11:05 +03:00
runastyle Fix #2843, Astyle script does not recognize Astyle 2.02 2011-06-22 21:41:14 +03:00
runastyle.bat Run Astyle recursively for gui/test. 2011-06-10 14:22:18 +03:00
webreport.sh webreport: refactoring 2011-03-14 13:40:10 +01: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.

    When building the command line tool, PCRE is normally used.
    PCRE is optional.

    There are multiple compilation choices:
      * qmake - cross platform build tool
      * Windows: Visual Studio
      * Windows: Qt Creator + mingw
      * 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. The rules are normally enabled.

        To compile with rules (pcre dependency):
            * the pcre dll is needed. it can be downloaded from:
                http://cppcheck.sf.net/pcre-8.10-vs.zip

        To compile without rules (no dependencies):
            * remove the preprocessor define HAVE_RULES from the project
            * remove the pcre.lib from the project

    Qt Creator + mingw
    ==================
        The PCRE dll is needed to build the CLI. It can be downloaded here:
            http://software-download.name/pcre-library-windows/

    gnu make
    ========
        To build Cppcheck with rules (pcre dependency):
            make

        To build Cppcheck without rules (no dependencies):
            make HAVE_RULES=no

    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/