在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
而不是使用-I
作为gcc
,我会看到同样的行为。是否只有重命名features.h
的方法?
1条答案
按热度按时间iaqfqrcu1#
为了包括用户创建的文件,您需要将它们放在引号中并指定路径,例如:
" "
用于用户创建的< >
用于系统范围的库因此,您不需要使用
-I
覆盖路径