#author("2020-10-24T03:35:55+00:00","","") #author("2020-10-24T10:22:20+00:00","","") #topicpath /////////////////////////////////////////////////////////////////////////////// * 目次 [#v94a90cb] #contents(); /////////////////////////////////////////////////////////////////////////////// * cmake [#sf1b9769] /////////////////////////////////////////////////////////////////////////////// * 使い方 [#j8aa3c33] //----------------------------------------------------------------------------- //============================================================================= ** コマンドラインオプション [#lae6b728] /////////////////////////////////////////////////////////////////////////////// * CMakeLists.txt [#t5542cda] //============================================================================= ** 書式 [#u506c08a] - cmake_minimum_required(MINIMUM_VERSION_OF_CMAKE) -- 要求する cmake の最低限のバージョンの指定 -- 書式例 cmake_minimum_required(VERSION 2.7) - add_library(<LIBNAME> <LIB_TYPE> <SRC1> [SRC2 SRC3...]) -- 生成する lib の名前と種類、それを構成するをソースファイル指定する。 --- ソースファイルの指定には、 "*.cpp" のような表現を使うことは出来ないので注意。 -- 書式例: libSystem.a を static lib として src1.c と src2.c から生成する場合 add_library(System STATIC src1.c src2.c) --- 引数と引数の間で改行しても良い。 --- <LIB_TYPE> |~<LIB_TYPE> |~description | |STATIC |静的ライブラリ (*.a) の生成を指定する | |SHARED |共有ライブラリ (*.so) の生成を指定する | |MODULE |共有ライブラリ (*.so) の生成を指定する(?) | - include_directories(<INCLUDE_PATH> [<INCLUDE_PATH2> [INCLUDE_PATH3 ...]]) -- <INCLUDE_PATH> を include path として追加する。 -- 2つ以上の include path を連ねて書いても良い。 - add_definitions(<DEFINITION> [<DEFINITION2> [DEFINITION3] ...]) -- <DEFINITION> には、 "-D__USE_FOO__" のような definition を指定する。2つ以上指定しても良い。 /////////////////////////////////////////////////////////////////////////////// * 関連ツール類 [#tools] - [[CLion 公式ヘルプ>https://pleiades.io/help/clion/installation-guide.html]] /////////////////////////////////////////////////////////////////////////////// * 参考リンク [#links] - [[CMake Reference Documentation — CMake 3.19.0-rc1 Documentation>https://cmake.org/cmake/help/latest/manual/cmake-commands.7.html]] - [[ごく簡単なcmakeの使い方>https://qiita.com/termoshtt/items/539541c180dfc40a1189]] - [[ありきたりなCMakeのプロジェクト作成 for C++>https://qiita.com/yumetodo/items/bd8f556ab56298f19ba8]] - [[MakefileをCMakeLists.txtに置き換える>https://www.hiroom2.com/2016/09/07/makefile%E3%82%92cmakelists-txt%E3%81%AB%E7%BD%AE%E3%81%8D%E6%8F%9B%E3%81%88%E3%82%8B/]]