5.0 KiB
Cppcheck
Linux ビルド状態 | Windows ビルド状態 | Coverity Scan Build 状態 |
---|---|---|
寄付
Cppcheckが有用であると感じた場合、寄付を検討してください。
名前について
このプログラムは元々、"C++check"という名前でしたが後に"Cppcheck"に変更されました。
このような名前ですが、Cppcheckは CとC++の両方に対して設計されています。
マニュアル
マニュアルはオンライン上にあります。
ビルド
C++11に対応したコンパイラが利用できます。部分的にC++11にサポートしたコンパイラも利用できるかもしれません。もし、あなたのコンパイラがVisual Studio 2013や GCC 4.6で利用できるC++11機能がサポートされているなら、そのコンパイラが利用できます。
GUIも利用する場合、Qtライブラリが必要です。
コマンドラインツールをビルドする場合、PCREはオプションです。これはルールを作成するために利用します。
コンパイル上の選択肢がいくつかあります。
- qmake - クロスプラットフォームのビルドツール
- cmake - クロスプラットフォームのビルドツール
- Windows: Visual Studio (VS 2013 またはそれ以上)
- Windows: Qt Creator + mingw
- gnu make
- g++ 4.6 (またはそれ以上)
- clang++
qmake
GUIをビルドするには、gui/gui.proファイルが利用できます。
cd gui
qmake
make
Visual Studio
cppcheck.slnファイルが利用できます。このファイルは、Visual Studio 2015向けです。しかし、このプラットフォームツールセットはこれより新しいバージョンまたは古いバージョン向けに変更できます。このソルーションには、プラットフォームターゲットとしてx86とx64があります。
ルールをコンパイルするためには、"Release-PCRE" または "Debug-PCRE" 設定を選択してください。pcre.lib (または pcre64.lib x64ビルド向け) と pcre.h を /externals にコピーしてください。
Qt Creator + MinGW
コマンドラインツールをビルドするには、PCRE.dllが必要です。これは以下のURLからダウンロードできます。: http://software-download.name/pcre-library-windows/
GNU make
単純で最適化しないビルド(依存関係なし):
make
推奨するリリースビルド方法:
make SRCDIR=build CFGDIR=cfg HAVE_RULES=yes CXXFLAGS="-O2 -DNDEBUG -Wall -Wno-sign-compare -Wno-unused-function"
フラグ:
-
SRCDIR=build
cppcheckの最適化にPythonを使用します。 -
CFGDIR=cfg
cppcheckの設定ファイル(.cfg)を置くディレクトリを指定します。 -
HAVE_RULES=yes
ルール機能の有効化 (ルール機能には PCRE が必要です)設定です。 -
CXXFLAGS="-O2 -DNDEBUG -Wall -Wno-sign-compare -Wno-unused-function"
ほとんどのコンパイラの最適化オプション、cppcheckの内部デバッグコードの無効化、基本的なコンパイラ警告の有効化
g++ (エキスパート向け)
依存関係なく Cppcheckをビルドしたい場合、次のコマンドを利用できます。
g++ -o cppcheck -std=c++11 -Iexternals -Iexternals/simplecpp -Iexternals/tinyxml -Ilib cli/*.cpp lib/*.cpp externals/simplecpp/simplecpp.cpp externals/tinyxml/*.cpp
--rule
や --rule-file
を利用する場合、依存ライブラリが必要です。
g++ -o cppcheck -std=c++11 -lpcre -DHAVE_RULES -Iexternals -Iexternals/simplecpp -Iexternals/tinyxml -Ilib cli/*.cpp lib/*.cpp externals/simplecpp/simplecpp.cpp externals/tinyxml/*.cpp
MinGW
mingw32-make LDFLAGS=-lshlwapi
その他のコンパイラ/IDE
- 空のプロジェクトファイル /makefileの作成
- cppcheck cli それに lib ディレクトリに含まれる全てのcppファイルをそのプロジェクトファイルまたはmakefileに加えます。
- externalsフォルダの全てのcppファイルをプロジェクトファイル / makefileに追加します。
- ビルド
Linux で Win32 コマンドラインバージョンをクロスコンパイル
sudo apt-get install mingw32
make CXX=i586-mingw32msvc-g++ LDFLAGS="-lshlwapi" RDYNAMIC=""
mv cppcheck cppcheck.exe