cmake v2.8.19.2 包括来自外部项目的文件夹

cmake v2.8.19.2 include folder from outside project

我正在尝试使用 cmake 版本 2.8.10.2 构建一个库

A​​ header 包含在项目外部的目录中,我尝试使用以下方法将路径添加到目录:

add_subdirectory($ENV{PRJ2}/path/)

我检查过路径是否正确,但在构建时我得到:

fatal error: header_name.h: No such file or directory

快把我逼疯了……

add_subdirectory在cmake项目中添加一个文件夹,在里面搜索CMakeLists.txt文件并加载配置。如果要将目录中的 headers 添加到项目中,则应使用 include_directories (link here)

考虑使用项目主文件夹之外的目录不方便。我建议你两种可能:

  • 如果您正在使用一些 headers 不属于另一个项目的部分(例如您出于其他原因自行开发并想将它们添加到您的项目中),则将它们移动到您的项目之一中文件夹
  • 如果 headers 来自另一个 library/project 使用 find_package 系统添加它们。我无法为 2.x 版本的 cmake 找到好的指南,但我强烈建议您转到 3.x