为什么找不到linux/*.h asm/*.h呢?
我的网卡是LinkSys Etherfast 10/100 Cards 的
驱动程序是 tulip.c
当我运行编译命令(如下)时,显示错误信息
gcc -DMODVERSIONS -DMODULE -D_KERNEL_ -Wall -Wstrict-prototypes -o6 -c tulip.c
错误信息:
linux/kernel.h :no such file or dictionary
linux/sched.h :no such file or dictionary
linux/string.h :no such file or dictionary
……
原文件是这样调用的
#include <linux/kernel.h>
#include <linux/sched.h>
#include <linux/string.h>
#include <linux/timer.h>
#include <linux/errno.h>
#include <linux/ioport.h>
#include <linux/malloc.h>
#include <linux/interrupt.h>
#include <linux/pci.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <asm/processor.h>
#include <asm/bitops.h>
#include <asm/io.h>
#include <asm/unaligned.h>
我用find 命令找到这些.h文件在
/usr/i386-glibc20-linux/include/asm
/usr/i386-glibc20-linux/include/linux
于是我试着这样改动:(举一个例子其他相同)
#include <./usr/i386-glibc20-linux/include/linux/kernel.h>
或
#include </usr/i386-glibc20-linux/include/linux/kernel.h>
或
#include <usr/i386-glibc20-linux/include/linux/kernel.h>
或
#include "/usr/i386-glibc20-linux/include/linux/kernel.h"
都不行,
我实在是不明白了,请教各位高手可以帮我解决这个问题,万分感激!!
我用的是 红旗linux服务器2.0版 |