更新日:2011-01-28
cmake
Linux編
単純なC言語のコンパイル
コンパイルしたいソースコードを用意します。
- test.c
#include <stdio.h>
int main(int argc, char* argv[])
{
ptinrf("Hello World!!!\n");
return 0;
}
CMakeLists.txtを以下のように準備します。
- CMakeLists.txt
ADD_EXECUTABLE(runx test.c)
% ls CMakeLists.txt test.c
- ビルド
そうしたら、ビルド用のディレクトリ(build)を用意してそこに移動します。
% mkdir build % cd build
Makefileを実行します。
% cmake ../
このとき../はCMakeLists.txtの場所を指します。
これで次のファイルとMakefileが生成されます。
CMakeCache.txt CMakeFiles Makefile cmake_install.cmake
これで次のファイルとMakefileが生成されます。
CMakeCache.txt CMakeFiles Makefile cmake_install.cmake
あとは、コンパイルして実行するだけです。
% make % ./runx
cmakeの設定リスト
- cmake_minimum_required(バージョン)
- 要求するcmakeの最低バージョンを設定。
cmake_minimum_required(2.6)だと2.6以上のバージョンを要求。
- project(プロジェクト名)
- プロジェクト名の指定。
- include_directories(インクルードパスリスト)
- インクルードパスの指定。
例) include_directories(/usr/include /usr/local/include ./)
「-I/usr/include -I/usr/local/include」を指定したことと同じ
- add_executable(実行ファイル ソースコードリスト)
- 実行ファイルを生成する設定。
指定した実行ファイルに必要なソースコードリストを指定します。
例) add_executable(runx test.c fun.c)
- link_directories(ライブラリパスリスト)
- ライブラリパスを指定。
例) link_directories(/usr/lib /usr/local/lib)
「-L/usr/lib -L/usr/local/lib」を指定したことと同じ
- target_link_libraries(ターゲット ライブラリリスト)
- ターゲット生成に必要なライブラリを指定。
例) target_link_libraries(runx GL GLU GLUT)
「-lGL -lGLU -lGLUT」を指定したことと同じ。
cmakeのヘルプ
- 変数の一覧を表示する
% cmake --help-variable-list
- コマンドの一覧を表示する
% cmake --help-command-list
- プロパティの一覧を表示する
% cmake --help-property-list