CMakeのテンプレ
はじめに
C++のプログラムをLinuxやMacで作るにはmakefileをごりごり書く方法もありますが,CMakeを使う方法が便利です.
この記事では,CMakeのテンプレートをメモ書きしておきます.
CMakeテンプレートの概要
1つのプロジェクトで1つの実行ファイルが基本だと思いますが,サンプルプログラムや思いつきのことをいくつかちゃちゃっと書きたいときは1回のビルドでいくつか実行ファイルができてほしいです.
今回作成したテンプレートでは1つのcppファイルで完結する程度の小さいプログラムをたくさん作りたい場合を想定しています.
main関数を含むcppを作り,ビルドを実行するとcppファイル名と同一の実行ファイルが作成されます.
CMakeテンプレート
project(cmake_skeleton) cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR) file(GLOB sources *.cpp) foreach(source ${sources}) message(${source}) get_filename_component(bin_name ${source} NAME_WE) add_executable(${bin_name} ${source}) endforeach()
プロジェクトの構成は次のようにしています.
├── CMakeLists.txt ├── build ├── readme.md ├── test1.cpp └── test2.cpp
buildディレクトリ内でcmake ..
とmake
を実行すると実行ファイルとしてtest1, test2が生成されます.