找不到自定义头文件

时间:2014-09-21 17:31:02

标签: c gcc

问题:

有没有办法告诉编译器查看特定目录中的头文件? 我想用

#include "my_file.h"

而不是

#include "/path/to/mylib/include/my_file.h"

(我试图了解如何组织头库文件的自定义库 不会与程序在同一个文件夹中。)

对于之前的回答者,我不得不完全重新提出我的问题,因为它不清楚。

解答:

最后我找到了答案。我无法添加答案,因为我的帖子被标记为重复(我相信),但无论如何,我可以使用以下任何一种:

#include <my_file.h>
#include "my_file.h"

“技巧”是使用-I选项,它添加了一个头目录。

gcc -I/path/to/mylib/include myprogram.c ~/path/to/mylib/src/file/my_file.c -o myprogram && ./myprogram

在这种情况下,结构是:

  • /path/to/mylib/include/my_file.h
  • /path/to/mylib/src/my_file.c
  • /path/to/myprogs/myprogram.c

目前的目录是/ path / to / myprogs

2 个答案:

答案 0 :(得分:2)

对于您自己的标题,您应该使用#include "file" - 如果您使用#include <file>,搜索路径会有所不同,因为它应该用于系统包含。

答案 1 :(得分:0)

使用此:

#include "my_file.h"

要了解确切原因,请参阅以下link