我正在尝试使用这个 gcc 命令编译一个程序:
gcc -c -fomit-frame-pointer -O2 sth.c
这些头文件包括:
#include <linux/kernel.h> //line 1
#include <linux/module.h> //line 2
#include <sys/syscall.h> //line 3
#include <linux/proc_fs.h> //line 4
#include <linux/types.h> //line 5
#include <linux/dirent.h> //line 6
#include <asm/unistd.h> //line 7
我收到"no such file or directory"
第 2,4 和 6 行的错误,尽管它们/usr/src/kernels/3.10.14-100.fc18.x86_64/include/linux/
与其他 4 行一样。
我之前(使用 Makefiles)(fedora 18)在这个系统上编译了一些其他包含内核头文件的程序,我确信例如它没有得到这样的错误dirent.h
or proc_fs.h
。我想也许我应该在 gcc 中使用一些其他选项,这些选项可能在那些 Makefile 中被考虑过!
kernel-headerfiles
并kernel-devel
安装了与我正在运行的内核相同版本的软件包。