This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
programming:cmake [2022/04/13 04:49] odagawa |
programming:cmake [2022/07/21 06:15] (current) odagawa |
||
|---|---|---|---|
| Line 2: | Line 2: | ||
| CMake は実行ファイル作成時の依存関係を整理し,Makefile などを作成してくれるソフトウェア.\\ | CMake は実行ファイル作成時の依存関係を整理し,Makefile などを作成してくれるソフトウェア.\\ | ||
| - | スクラッチで書いたことはないが,どこかから何かしらをコピペしながら覚えていくのがよいと思う. | + | スクラッチで書いたことはないが,どこかから何かしらをコピペしながら覚えていくのがよいと思う.\\ |
| + | おそらく最小単位は以下の通り (MyApp.cpp から MyApp を作成) | ||
| < | < | ||
| Line 23: | Line 24: | ||
| message(" | message(" | ||
| </ | </ | ||
| + | |||
| + | そして, | ||
| + | < | ||
| + | target_include_directories(MyApp PRIVATE ${ROOT_INCLUDE_DIRS}) | ||
| + | target_link_libraries(MyApp ${ROOT_LIBRARIES}) | ||
| + | </ | ||
| + | とすれば使えるはず. | ||
| ===boost=== | ===boost=== | ||
| Line 37: | Line 45: | ||
| endif() | endif() | ||
| </ | </ | ||
| - | |||
| - | そして, | ||
| - | < | ||
| ===Geant4=== | ===Geant4=== | ||
| Line 53: | Line 58: | ||
| ===自作ライブラリ=== | ===自作ライブラリ=== | ||
| + | |||
| + | いろいろ調べてコピペしたので間違ってても保証はできない.\\ | ||
| + | 少なくとも KEKCC の僕の環境では動いた. | ||
| + | < | ||
| + | SET(MYLIB_SERACH_PATHS | ||
| + | /usr/local | ||
| + | /opt/local | ||
| + | ${MYLIB_PATH} | ||
| + | ) | ||
| + | |||
| + | FIND_PATH(MYLIB_INCLUDE_DIR MyLib.hpp | ||
| + | HINTS | ||
| + | $ENV{MYLIBDIR} | ||
| + | PATH_SUFFIXES include/ | ||
| + | PATHS ${MYLIB_SEARCH_PATHS} | ||
| + | ) | ||
| + | |||
| + | FIND_LIBRARY(MYLIB_TEMP | ||
| + | NAMES MyLib | ||
| + | HINTS | ||
| + | ${ENV{MYLIBDIR} | ||
| + | PATH_SUFFIXES lib64/ | ||
| + | PATHS ${MYLIB_SEARCH_PATHS} | ||
| + | ) | ||
| + | |||
| + | IF(MYLIB_TEMP) | ||
| + | SET(MYLIB ${MCLIB_TEMP} CACHE STRING "Where mylib Library can be found" | ||
| + | SET(MCLIB_TEMP " | ||
| + | ENDIF(MYLIB_TEMP) | ||
| + | |||
| + | INCLUDE(FindPackageHandleStandardArgs) | ||
| + | |||
| + | FIND_PACKAGE_HANDLE_STANDARD_ARGS(MyLib REQUIRED_VARS MYLIB MYLIB_INCLUDE_DIR) | ||
| + | |||
| + | </ | ||