我使用CMake创建可执行文件A。
它使用STATIC库B,而使用STATIC库C和D。
B编译没有错误。
全部由超级项目SP构建(仅包含A和B的子目录)
SP
|-- A
|-- <some>.cpp
|-- CMakeLists.txt
|-- B
|-- <some>.cpp
|-- <some>.h
|-- C
|-- D
|-- CMakeLists.txt
CMakeLists.txt
问题在于项目A没有看到C和D,并且我不知道如何链接C和D库
尝试:
include (../B)
add_subdirectory (../B ../B)
set (ALL_LIBS ${ALL_LIBS} ${C_LIBRARIES})
set (ALL_LIBS ${ALL_LIBS} ${D_LIBRARIES})
但是ALL_LIBS保持为空
编辑:
SP CMakeFile
cmake_minimum_required (VERSION 3.8)
project (ALL_BUILD)
add_subdirectory(A)
add_subdirectory(B)