CMake 包含路径

Posted

技术标签:

【中文标题】CMake 包含路径【英文标题】:CMake include path 【发布时间】:2013-03-13 17:40:59 【问题描述】:

在 C++ 项目中,我会在不使用 UNIX 目录快捷方式的情况下将头文件作为项目源目录的后代包含在内。或者 .. 。我不确定如何配置 cmake 来使用它。

我有目录结构:

Root
|-include
| |- foo.h
|-src
| | foo.cpp

【问题讨论】:

【参考方案1】:

放入root\CMakeList.txt:

project(root)
include_directories($root_SOURCE_DIR/include)
...

您可以在子项目中的任何地方使用 root_SOURCE_DIR。

欲了解更多信息,请考虑访问http://www.cmake.org/Wiki/CMake_Useful_Variables#Variables_not_listed_here

【讨论】:

正斜杠 ($root_SOURCE_DIR/include) 在 Windows 上有效吗?【参考方案2】:

include_directories( include ) 用于根文件夹中的 CMakeLists.txt。或来自任何子文件夹的include_directories( $CMAKE_SOURCE_DIR/include )

【讨论】:

以上是关于CMake 包含路径的主要内容,如果未能解决你的问题,请参考以下文章

Cmake包含系统和程序文件的路径

CMake 包含路径 - 依赖于外部库的库

CMake 和绝对标题路径

cmake find_path 其中路径包含版本号

CMake 路径中的错误

使用 CMake 从没有相对路径的子目录导入