我目前正在创建一组应该使用的类 使用CLion的不同项目。我的问题是如何实现这一点 功能。
到目前为止,我研究了以下相关问题 这并没有真正解决我的问题:
我创建了两个示例项目“TestLib”和“TestProj”:
“TestLib”的 CMakeList.txt 目前看起来如下:
cmake_minimum_required(VERSION 3.5)
project(TestProj)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++0x")
find_library(CLASS_LIB TestLib HINTS /home/user/.CLion2016.1/system/cmake/generated/TestLib-7507f101/7507f101/Debug)
set(SOURCE_FILES main.cpp)
add_executable(TestProj ${SOURCE_FILES})
target_link_libraries(TestProj CLASS_LIB)
现在,我尝试使用以下内容在“TestProj”中使用此库
的CMakeLists.txt :
{{1}}
CMake找到了库但是
非常感谢任何帮助。谢谢。
答案 0 :(得分:0)
您可以将项目的根目录放在CMakeLists.txt中 有这样的内容:
add_subdirectory(TestLib)
add_subdirectory(TestProj)
之后你可以用TestProj的CMakeLists.txt写
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../TestLib)
target_link_libraries(TestProj TestList)
,无需使用find_library
答案 1 :(得分:0)
如果目标是使您的库可用于多个其他项目,建议的方法是让您的库项目的安装过程生成CMake配置文件。不幸的是,执行此操作的过程有点神秘,但https://cmake.org/cmake/help/git-master/manual/cmake-packages.7.html#creating-packages应该为您提供如何执行此操作的起点。