【发布时间】:2018-05-23 06:52:09
【问题描述】:
myproject/
lib/
src/
project2/
**CMakeLists.txt**
test.cpp
我写了CMakeLists.txt 来编译'test.cpp' 文件。
我想include /src 因为我应该访问 src 的文件。
我怎样才能在上面包含 src 文件?
我试过set(MORE_INCLUDE_DIR "-I${CMAKE_SOURCE_DIR}../../
但它不起作用。
我应该单独编译'test.cpp'
请有人帮助我。
提前致谢!
【问题讨论】:
-
MORE_INCLUDE_DIR是什么?您应该致电include_directories或target_include_directories。 -
对抽象的 cmets 感到抱歉。 MORE_INCLUDE_DIR 用于设置 include_directories。我可以根据 CMAKE_SOURCE DIRECTORY 在父目录中设置 include_directories 吗?
-
你可能指的是
${CMAKE_SOURCE_DIR}/../,而不是${CMAKE_SOURCE_DIR}../../。顺便说一句,使用message()命令你可以打印任何变量的值,并检查它的值。 -
@Tsyvarev 感谢您的评论:) 我已经修改了它,但它找不到路径。在这种情况下,我在其他部分错了吗?
-
很难说你错在哪里,因为你既没有显示设置包含目录的代码 (
CMakeLists.txt),也没有显示确切的错误消息。根据-I选项的explicit 设置,您似乎误解了CMake 概念。但同样,没有代码我们只能猜测。
标签: c++ cmake compilation