Path cmake和;CMakeLists.txt“;文件继承

Path cmake和;CMakeLists.txt“;文件继承,path,cmake,Path,Cmake,我对cmake有以下问题: 在顶级CMakeLists.txt中: set(MY_INCLUDE_DIR "/path/to/dir") include_directories(${MY_INCLUDE_DIR}) 在较低级别的CMakeLists.txt中: set(MY_INCLUDE_DIR "/path/to/dir") include_directories(${MY_INCLUDE_DIR}) GCC通过make命令返回一个“无此类文件或目录”,该行包含位于MY\u INCL

我对cmake有以下问题:

在顶级CMakeLists.txt中:

set(MY_INCLUDE_DIR "/path/to/dir")
include_directories(${MY_INCLUDE_DIR})
在较低级别的CMakeLists.txt中:

set(MY_INCLUDE_DIR "/path/to/dir")
include_directories(${MY_INCLUDE_DIR})
GCC通过make命令返回一个“无此类文件或目录”,该行包含位于
MY\u INCLUDE\u DIR
中的文件 但是,如果我在指定include目录的同一较低级别文件中移动set行,则一切正常

在文档中明确指出,较低级别的文件继承较高级别的文件

我的档案有什么问题


谢谢。

在设置
MY\u INCLUDE\u DIR
之后,您是否完成了
add\u子目录
?/path/to/DIR是相对路径还是绝对路径?@sakra:这是绝对路径。据我所知,在
INCLUDE\u directory
中指定的目录是相对于
CMAKE\u CURRENT\u SOURCE\u DIR
的,请尝试将变量设置为
${CMAKE_CURRENT_SOURCE_DIR}/${MY_INCLUDE_DIR}
在调用
add_子目录()
之前,是否设置变量?