【发布时间】:2014-02-24 19:19:54
【问题描述】:
我知道当使用#include <file> 时,编译器将在定义的系统目录中搜索file。如何查看这些目录?
我问是因为我在 /usr/local/include 中添加了一个包含一堆头文件的目录,当我 #include <file> 时,编译器仍然显示 error: unknown type name ‘TPM_TAG’。我怀疑 /usr/local/include 不在编译器要搜索的目录列表中。
谢谢!
【问题讨论】:
-
如果没有找到文件,你会遇到致命错误,所以这不是问题
-
您可以使用
-I标志来传递包含目录。 -
他可能在 /usr/include 中还有一个头文件的实例,在 /usr/local/include 中还有一个更新的版本。
-
这取决于您使用的编译器。使用 gcc,
gcc -v应该会告诉你它在哪里寻找。 -
我有一个目录,里面装满了我想在我的项目中使用的头文件。这些头文件假定它们位于 gcc 识别的目录中(因为它们用
#include <file>相互包含)。所以我把这个目录放在/usr/local/include 中,并将它们包含在#include<file>中,我得到unknown type name错误。我尝试删除我的#include 语句以查看会发生什么,但我得到了同样的错误。这让我觉得编译器没有在 /usr/local/include 中找到头文件的目录。 @KeithThompson,该输出的哪个选项提供目录?
标签: c include-path