Cmake:包含目录 - 父目录

N.h*_*ang 3 c++ compilation cmake

myproject/
  lib/
  src/
  project2/
    **CMakeLists.txt**
    test.cpp
Run Code Online (Sandbox Code Playgroud)

我写CMakeLists.txt的是编译'test.cpp'文件。我想include /src因为我应该访问 src 的文件。

我如何包含上面的 src 文件?我尝试过,set(MORE_INCLUDE_DIR "-I${CMAKE_SOURCE_DIR}../../ 但它不起作用。

我应该'test.cpp'单独编译请有人帮助我。

提前致谢!

小智 8

在这种情况下,cmake 需要绝对路径而不是相对路径。让我们尝试像这样调用 include_directories :

    get_filename_component(PARENT_DIR ../ ABSOLUTE)
    include_directories(${PARENT_DIR}/src)
Run Code Online (Sandbox Code Playgroud)

它可以提供帮助。