我用光盘打包好的fedora虚拟机做linux设备驱动实验 就一个简单的hello_world驱动模块 ,把它编译并安装在这个fedoraPC系统上 老是出问题。调了4天都没有解决,希望大神提供帮助
这是C程序
复制代码- #include <linux/kernel.h>
- #nclude <linux/module.h>
- #include <linux/kernel.h>
- #include <linux/init.h>
- static int init_hello_4(void)
- {
- printk(KERN_ALERT "Hello, world 4 ");
- return 0;
- }
- static void cleanup_hello_4(void)
- {
- printk(KERN_ALERT "Goodbye, world 4 ");
- }
- module_init(init_hello_4);
- module_exit(cleanup_hello_4);
- MODULE_LICENSE("GPL");
- MODULE_AUTHOR("Playmud");
- MODULE_DESCRIPTION("Test only!");
- include <linux/init.h>
- include <linux/init.h>
|
下面是Makefile
复制代码- ifneq ($(KERNELRELEASE),)
- obj-m :=hello.o
- else
- #KERNELDIR ?=/home/student/linux-2.6.39-rc1
- KERNELDIR ?= /lib/modules/`uname -r`/build
- PWD :=$(shell pwd)
- default:
- $(MAKE) -C $(KERNELDIR) M=$(PWD) modules
- endif
|
下面是KO的信息
[root@embedclub hello]# modinfo hello.ko
filename: hello.ko
description: Test only!
author: Playmud
license: GPL
srcversion: 8582FEB4B426329AE9D05F7
depends:
vermagic: 2.6.35.13-92.fc14.i686 SMP mod_unload 686
[root@embedclub hello]#
下面是安装信息 (老是错误)
[root@embedclub hello]# insmod hello.ko
insmod: error inserting 'hello.ko': -1 Invalid module format
[root@embedclub hello]#
下面是内核信息
[root@embedclub hello]# uname -a
Linux embedclub 2.6.35.13-92.fc14.i686.PAE #1 SMP Sat May 21 17:33:09 UTC 2011 i686 i686 i386 GNU/Linux
希望高手相助