我在 Code::Blocks 13.12 中有以下项目布局。我以 root 身份运行。
注意文件 dtconfig.h 位于 Headers 文件夹中。
该文件位于与 main.cpp 文件相同的目录中:
但是,当我去构建时,出现以下错误:
当我将 include 括在引号中时,例如:
#include "dtconfig.h"
它可以工作,但我必须修改所有其他 header 才能做同样的事情。这些 header 不是我写的,而是源项目的一部分。因此,如果不需要的话,我不想弄乱这些文件。
我需要在程序中做/配置什么才能让它工作吗?
此外,我正在运行 Ubuntu 16.04.1 LTS Mate。
最佳答案
您不打算为您自己的项目代码使用尖括号 ( <dtconfig.h>
),但是如果您需要在不更改每个文件的情况下使它们工作,那么您可以向编译器传递一个选项,告诉它使用您的dtSearch
目录作为包含目录。
我不知道 C::B 是否支持在 GUI 中包含目录,但你总是可以回退到传递 -Ipath/to/dtSearch
直接到 GCC 和 Clang,或 /I
对于 MSVC。您可以在 C::B 允许您为编译器指定其他命令行选项的地方执行此操作。
关于c++ - 为什么代码块找不到 header ,即使它在那里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39150375/