包括来自并行目录结构的文件
including files from a parallel directory structure
不太重复:CMake include path
我最初有一个这样的目录结构:
root
src
foodir
foo.cpp
foo.h
然后将头文件移动到它们自己的并行目录中:
root
src
foodir
foo.cpp
include
foodir
foo.h
问题是..foo.cpp过去只使用#include "foo.h"
,现在必须使用#include "foodir/foo.h"
(用-Iinclude
编译)。
好的,所以这不是一个真正的"问题",但最好是我可以保留"foo.h"而不是"foodir/foo.h"(大量文件)。有没有办法,使用 cmake,让编译器在 include/
的相应子目录中查找?
要将include/foodir
添加到编译器搜索路径列表中,只需使用 include_directories
. 假设您的顶级CMakeLists.txt位于"根"中:
include_directories(${CMAKE_SOURCE_DIR}/include/foodir)
你只需要传递一个合适的-I<dir>/foobar
参数。例如,-Iinclude/foobar
可能有效。使用make
时,您通常会将选项添加到CPPFLAGS
(当然,使用的内容取决于项目的特定规则)。
相关文章:
- C++将文本文件中的数据读取到结构数组中
- 调用 C 文件中的"C++"结构
- 结构包含在两个头文件中,这两个文件我都不拥有
- 在头文件和 cpp 文件中使用一次 #pragma 时出现结构重定义错误
- 介子复制/安装头文件到输出目录并保持文件夹结构
- 给定一个C++嵌套的私有结构类型,是否有从文件范围静态函数访问它的策略
- 将内部带有矢量的结构保存/读取到二进制文件中
- 从另一个 cpp 文件更改结构内、映射键内的变量
- 将文本文件解析为树状数据结构
- 如何使用位字段将数据从二进制文件复制到结构中?
- 在树结构.txt文件中搜索节点
- 当结构位于单独的头文件中时'unregistered datatype'在 QML 中出现Q_GADGET错误
- 将文件读入数据结构
- 如何读取没有数组或结构的 3 列文件
- (ODR 使用问题)在不同文件中priority_queue名称相同的结构
- 在.cpp文件之间传递结构声明,而不使用全局头文件
- OSX clang++:用于 cpp 文件中显式实例化模板的体系结构x86_64的未定义符号
- 如何修复函数中的 fstream 文件输入以将正确的信息存储在结构数组中?
- 将结构向量保存到文件中,并从C++文件中读取结构向量
- 如何在结构/文件中搜索名称