readme.md: various improvements

This commit is contained in:
XhmikosR 2012-12-23 11:56:38 +02:00 committed by PKEuS
parent b7501a1db0
commit abfca0b574
1 changed files with 48 additions and 36 deletions

View File

@ -1,94 +1,106 @@
# Cppcheck # # Cppcheck
## Donations ## ## Donations
### Donations ### ### Donations
If you find Cppcheck useful for you, feel free to make a donation. If you find Cppcheck useful for you, feel free to make a donation.
[![Donate](http://pledgie.com/campaigns/4127.png)](http://pledgie.com/campaigns/4127) [![Donate](http://pledgie.com/campaigns/4127.png)](http://pledgie.com/campaigns/4127)
## About the name ## ## About the name
The original name of this program is "C++check" but it was later changed to "cppcheck". The original name of this program was "C++check", but it was later changed to "Cppcheck".
Despite the name, Cppcheck is designed for both C and C++. Despite the name, Cppcheck is designed for both C and C++.
## Manual ## ## Manual
A manual is available online: A manual is available [online](http://cppcheck.sf.net/manual.pdf).
http://cppcheck.sf.net/manual.pdf
## Compiling ## ## Compiling
Any C++ compiler should work. Any C++ compiler should work.
To build the GUI, you need Qt. To build the GUI, you need Qt.
When building the command line tool, PCRE is normally used. When building the command line tool, [PCRE](http://www.pcre.org/) is normally used.
PCRE is optional. PCRE is optional.
There are multiple compilation choices: There are multiple compilation choices:
* qmake - cross platform build tool * qmake - cross platform build tool
* Windows: Visual Studio * Windows: Visual Studio or Qt Creator or MinGW
* Windows: Qt Creator + mingw
* gnu make * gnu make
* g++ * g++
### qmake ### ### qmake
You can use the gui/gui.pro file to build the GUI. You can use the gui/gui.pro file to build the GUI.
```
cd gui cd gui
qmake qmake
make make
```
### Visual Studio ### ### Visual Studio
Use the cppcheck.sln file. The rules are normally enabled. Use the cppcheck.sln file. The rules are normally enabled.
To compile with rules (pcre dependency): 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 * the PCRE dll is needed. It can be downloaded from [here](http://cppcheck.sf.net/pcre-8.10-vs.zip).
To compile without rules (no dependencies): To compile without rules (no dependencies):
* remove the preprocessor define HAVE_RULES from the project * remove the preprocessor define `HAVE_RULES` from the project
* remove the pcre.lib from the project * remove the pcre.lib from the project
### Qt Creator + mingw ### ### Qt Creator + MinGW
The PCRE dll is needed to build the CLI. It can be downloaded here: The PCRE dll is needed to build the CLI. It can be downloaded here:
http://software-download.name/pcre-library-windows/ http://software-download.name/pcre-library-windows/
### gnu make ### ### gnu make
To build Cppcheck with rules (pcre dependency): To build Cppcheck with rules (PCRE dependency):
```
make HAVE_RULES=yes make HAVE_RULES=yes
```
To build Cppcheck without rules (no dependencies): To build Cppcheck without rules (no dependencies):
```
make make
```
### g++ (for experts) ### ### g++ (for experts)
If you just want to build Cppcheck without dependencies then you can use this command: If you just want to build Cppcheck without dependencies then you can use this command:
```
g++ -o cppcheck -Ilib cli/*.cpp lib/*.cpp g++ -o cppcheck -Ilib cli/*.cpp lib/*.cpp
```
If you want to use --rule and --rule-file then dependencies are needed: 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 g++ -o cppcheck -lpcre -DHAVE_RULES -Ilib -Iexternals cli/*.cpp lib/*.cpp externals/tinyxml/*.cpp
```
### mingw ### ### MinGW
```
make LDFLAGS=-lshlwapi make LDFLAGS=-lshlwapi
```
### Cross compiling Win32 (CLI) version of Cppcheck in Linux ### ### Cross compiling Win32 (CLI) version of Cppcheck in Linux
```
sudo apt-get install mingw32 sudo apt-get install mingw32
make CXX=i586-mingw32msvc-g++ LDFLAGS="-lshlwapi" make CXX=i586-mingw32msvc-g++ LDFLAGS="-lshlwapi"
mv cppcheck cppcheck.exe mv cppcheck cppcheck.exe
```
## Webpage ## ## Webpage
http://cppcheck.sourceforge.net/ http://cppcheck.sourceforge.net/