C未能包含

时间:2013-03-02 08:25:43

标签: c include

我们需要对下载的大包进行一些改进。 假设主文件夹就像

... /凸出

并且有

... /凸出/生成文件

将用于编译项目。

我添加了一个新文件夹

... /凸出/特征1 / file1.h    ... / PROJ /特征1 / file1.c中

file1.c包含file1.h

所以

#include“feature1 / file1.h”

然后在执行Makefile时,它停在了像

这样的命令

gcc -c feature1 / file1.c -I。 ...

读取的错误消息无法包含file1.h

可以在另一个实例上编译相同的代码而不会触发错误。    这两个实例都是ubuntu 10.04。我不会说它们是相同的,    但应该非常相似。知道出了什么问题吗?感谢。

詹姆斯

3 个答案:

答案 0 :(得分:2)

这取决于the "-I" parameters to gcc。如果文件夹“feature1”在其中而不是其父项 - 它将失败。如果它的父母在其中 - 它将成功。

在您的情况下(“-I。”),它是搜索路径中的“feature1”,而不是其父项。

此外,正如其他人所提到的,由于两个文件都在同一目录中,因此您不需要“include”指令中的目录名。

答案 1 :(得分:1)

file1.c is to include file1.h

在这种情况下,两个文件都在同一个文件夹中,所以我认为它必须是:

#include "file1.h"

答案 2 :(得分:0)

如果.h和.c文件位于同一目录中,我希望include包含:

#include "file1.h"