介绍:
我正在尝试使用 CMake 来获取跨平台编译脚本(适用于 Windows32 上的 VS 9.0 和 Unix 上的 Makefiles)。
我遇到了关于 add_subdirectory() 的一些我无法理解的事情。
让我向你展示我的代码:
Context:
我的名为“module1”的模块的架构是这样的:
- CMakeLists.txt
- include/
- src/
- test/
我的整个应用程序的架构由这些模块组成,这些模块本身就是可以独立工作的项目。
我的目标:
我想将我的模块编译为库
我想用 test/ 文件夹中的代码测试库
这是我写的 CMakeLists :
这是我的模块根目录中的CMakeLists.txt。
这可能无法解决您原来的问题,但在您的test/folder/CMakeLists.txt
尝试改变
#ADD OUR TESTED LIBRARY
include_directories(../include)
link_directories(../build/lib/${CMAKE_BUILD_TYPE})
to
#ADD OUR TESTED LIBRARY
include_directories(${CMAKE_SOURCE_DIR}/include)
link_directories(${CMAKE_BINARY_DIR}/lib/${CMAKE_BUILD_TYPE})
否则你假设你的构建文件夹总是被命名build
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)