netdoger 发表于 2012-08-22 16:25

我是个新手,请问个内核编译的问题

我的Linux是CentOS 5.3,是装在虚拟机上的。
这是从书上抄来的:
一、hello.c
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
MODULE_LICENSE("Dual BSD/GPL");
static int hello_init(void) {
printk("<1> Hello world!\n");
return 0;
}
static void hello_exit(void) {
printk("<1> Bye, cruel world\n");
}
module_init(hello_init);
module_exit(hello_exit);

二、Makefile
        obj-m :=hello.o
        KDIR:=/lib/modules/$(shell uname -r)/build
        PWD   :=$(shell pwd)
default:
        $(MAKE) -C $(KDIR) M=$(PWD) modules

可是我运行make时,出现
meke:***/lib/modules/2.3.18-128.el5/build:No such fiule or directory. Stop.

可是我在/lib/modules/2.3.18-128.el5/有个build的链接文件,
请问我错在哪了?是不是内核没有编译?如果没有编译,该怎么做呢?

androidfried1 发表于 2012-08-23 17:58

编译driver你得先安装kernel source

jackyard 发表于 2012-08-23 23:02

makefile不对

lloydm 发表于 2012-08-28 20:54

页: [1]
查看完整版本: 我是个新手,请问个内核编译的问题