+ -
当前位置:首页 → 问答吧 → 问个弱弱的问题

问个弱弱的问题

时间:2006-03-22

来源:互联网

编写了一个HELLO 的模块但是加载的时候说版本不对。用lsmod看发现模块没有加进去
代码如下
#define MODULE
#include <linux/module.h>
int init_module(void)
{
printk("<1> Hello World.\n");
return 0;
}
void cleanup_module(void)
{
printk("<1> GoodBye. Hello World.\n");
return;
}
gcc -c hello.c
insmod hello.o
安装的时候:
hello.o:kernel-module version mismatch
./helloworld.o was compiled for kernel version 2.4.20
while this kernel is version 2.4.20-8
应该怎么办?

作者: chairman   发布时间: 2006-03-22

gcc -c hello.c应该加上版本控制信息 吧
你可以这样
cp /usr/src/linux-2.4.0/include/linux/version.h /usr/src/include/version.h

作者: macping   发布时间: 2006-03-22

这个办法的确可以,多谢楼上.
不知道如果想加入版本信息,不用这种拷贝,应该怎么做呢?

作者: chairman   发布时间: 2006-03-22

请看linux1.0核心游记,模块编写的那一章,有解决这个问题的办法

作者: gotop2004   发布时间: 2006-03-22