前提・実現したいこと
Cmakeを使用したプロジェクトにおいて,全ディレクトリ共通で使用するライブラリの設定を行いたいです.
ディレクトリ構造は以下のようになっております.
project/ CMakeLists.txt main.cpp MyLib1/ CMakeLists.txt mylib1.hpp mylib1.cpp MyLib2/ CMakeLists.txt mylib2.hpp mylib2.cpp
main.cpp
,mylib1.cpp
, mylib2.cpp
全てにおいてITK
というライブラリを使用したいです.
発生している問題
mylib1.cpp
,mylib2.cpp
においてインクルードがうまくいきません.
該当のソースコード
project直下のCMakeLists.txt
CMake
1 2 3add_subdirectory(MyLib1) 4add_subdirectory(MyLib2) 5 6 7add_executable (Main main.cpp) 8 9target_link_libraries (Main MyLib1 MyLib2) 10 11 12# VTK 13find_package(VTK REQUIRED) 14include_directories(${VTK_USE_FILE}) 15target_link_libraries(Main ${VTK_LIBRARIES}) 16 17# ITK 18find_package(ITK REQUIRED) 19include_directories(${ITK_USE_FILE}) 20target_link_libraries(Main ${ITK_LIBRARIES})
MyLib1直下のCMakeLists.txt
(MyLib2直下のCMakeLists.txtも同様)
CMake
1set(My_LIB_1_SRCS 2 mylib1.hpp 3 mylib1.cpp 4) 5 6# Declare the library 7add_library(MyLIB1 STATIC 8 ${My_LIB_1_SRCS} 9) 10 11# Specify here the include directories exported 12# by this library 13target_include_directories(MyLIB1 PUBLIC 14 ${CMAKE_CURRENT_SOURCE_DIR} 15)
現状うまく行っていること
main.cpp
ではライブラリのヘッダファイルをインクルードできています.
補足情報(FW/ツールのバージョンなど)
Cmake 3.11.3
clang 6.0.0
どうすればライブラリのヘッダファイルがMylib1
,Mylib2
で使用できるのか教えていただけると幸いです.

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/17 02:07
2018/06/17 03:41
2018/06/17 04:04
2018/06/18 02:13