|
|

楼主 |
发表于 2007-3-30 12:39:17
|
显示全部楼层
以下摘自fc的发行注记:
8.7. 只构建内核模块
编译内核模块,如设备驱动时,不需要当前运行的内核的完整源码树。为编译外部模块,只需要安装 kernel-devel 软件包。如果没有安装,就用 Pirut 安装它,执行 应用程序 → 添加/删除软件 或者使用 yum。运行下面的命令来安装:
su -c 'yum install kernel-devel'
例如,要构建 foo.ko 模块,在包含 foo.c 文件的目录中创建下面的 Makefile:
obj-m := foo.o
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) M=$(PWD) modules
执行 make 命令来编译 foo.ko 模块就可以了。
首先非常谢谢版主
我从昨晚就开始yum install kernel-devel 安装完后没什么反应
然后编译一个模块,类似于版主的hello.c (我从linux device drive这本书的官方网站下的源代码,应该源码本身不会有什么错误),编译的时候会提示:linux/config.h没有那个文件,或是说 KERN_ALERT没有定义........
请问我该怎么做 谢谢 |
|