Linux驱动Invalid module format错误解决
浏览:34日期:2022-08-02
;1.编译错误(其实这个问题和 Makefile有很大关系) 2.Invalid module format 错误 3.insmod: error inserting './hello.ko': -1 File exists 开发环境 内核版本:2.6.22(我下载的最新版本) gcc:gcc (GCC) 4.1.2 Makefile gcc -D__KERNEL__ -DMODULE -DLINUX -I /usr/local/src/linux2.4/include -c -o hello.o hello.c 上面这种写法适合 2.4 版本的内核,在2.6下用这种写法很可能导致许多编译错误,即使编译通过也会产生 Invalid module format 错误。 2.6下正确的 Makefie 如下: # Makefile2.6ifneq ($(KERNELRELEASE),)#kbuild syntax. dependency relationshsip of files and target modules are listed here.mymodule-objs := hello.oobj-m := hello.o elsePWD := $(shell pwd)KVER ?= $(shell uname -r)KDIR := /lib/modules/$(KVER)/buildall:$(MAKE) -C $(KDIR) M=$(PWD)clean:rm -rf .*.cmd *.o *.mod.c *.ko .tmp_versionsendif使用上面的 Makefie 同时也解决了 Invalid module format 错误 insmod: error inserting './hello.ko': -1 File exists 错误解决 第一次insmod ./hello.ko 没有输出表示你的模块被正常载入了,后来的错误是你重复载入这个模块导致的 用命令 lsmod | grep hello 看看是不是有这个模块? 用命令 tail /var/log/messages 有 hello,world module程序正常执行。
标签:
Linux系统
相关文章:1. 东芝将发布20TB MG10系列机械硬盘 容量增加了11.1%2. 小米笔记本Pro 2022将于7月4日发布:大师级屏幕3. 英特尔桌面GPU Arc系列发布时间或推迟到八月4. 锐龙版华硕无畏16 2022笔记本上架 首发价3999元5. 360数科宣布正式加入FinOps阵营 finops是什么6. appdata文件夹在哪里详细介绍7. 红米显示器23.8英寸Pro发布:三微窄边框IPS屏8. AMD发布锐龙7000系列台式机处理器:基于“Zen 4”架构9. AMD锐龙700系列国行价格公布:16核心 售价仅5499元10. 微软Surface Studio3曝光 芯片支持2.4Ghz和5Ghz
热门推荐
- AHCI是什么?AHCI硬盘模式作用有哪些?
- 1.U盘写保护格式化不了怎么操作?有写保护的u盘怎么格式化?
- 2.苹果文件打开方式设置默认教程
- 3.昂达Z490 SD4、Z490-HD价格599元起 支持11代酷睿
- 4.专家评论: Vista启动速度有那么慢吗
- 5.AMD RX 6500 XT显卡国行价格1599元 1 月19日开售
- 6.三星推出512GB CXL内存扩展器2.0 可为CPU增加16TB内存
- 7.打印机一次出2张纸怎么回事
- 8.JDK,“错误:无法打开安装程序包。请与应用程序供应商...”
- 9.电脑出现:disk boot failure 的解决方法
- 10.活用系统中Guest账号提高内网控制效率