我在 IBM R51 机器上运行 Ubuntu 10.10。当我访问 list.h 以阅读它(手动/人工)时,我打开/usr/src/linux-headers-2.6.35-22/include/linux 。
但是在终端中编写 C 程序时,我无法调用任何 #include,因为它不在默认的/usr/include 文件夹中。
当我通过键入 #include "/usr/src/linux-headers-2.6.35-22/include/linux/list.h"更改语句以反射(reflect)路径时,它返回错误,因为 list.h 依次调用提到的位于“linux”文件夹中的其他头文件 头文件是你必须知道的: “linux/poison.h”、“linux/prefetch.h”和“asm/system.h”
因此,如果我必须复制每一个,我可以但预取依次调用其他依赖项,这些依赖项不存在于/usr/include 目录中。我希望你明白。
我该如何解决这个问题?
最佳答案
您确定这些 header 真的是您所需要的吗?标准 C 头文件应该在/usr/include 下
无论如何,您需要通过“-I”标志将 header 搜索路径传递给编译器。
通过-I传递路径
-I/usr/src/linux-headers-2.6.35-22/include/linux
然后在你的C代码中
#include "list.h"
关于c - 在 C 文件中使用 List.h,Ubuntu10.10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4967621/