【发布时间】:2022-01-07 19:49:43
【问题描述】:
在 Linux 环境 (CentOS7) 中,我有一个本地 foo/features.h,需要在基本 main.cpp 中导入。目录结构是这样的
./workspace/main.cpp
./foo/features.h
我想使用main.cpp 导入文件
#include "features.h"
(而不是给出相对路径../features.h)。
如果我只是从workspace/执行
gcc main.cpp -o m.out -I../foo
然后像/usr/include/stdio.h 这样的其他内部文件无法导入/usr/include/features.h(因为该文件中的#include <features.h> 语句)并尝试导入我的本地foo/features.h。
如果我将CPATH 设置为gcc 而不是使用-I,我会看到相同的行为。是我重命名features.h 的唯一选择吗?
【问题讨论】:
-
你可以使用
-I../然后#include "foo/features.h" -
@AlanBirtles 非常感谢。效果很好。