问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

linux驱动开发insmod hello.ko失败

发布网友 发布时间:2022-05-10 05:18

我来回答

5个回答

热心网友 时间:2023-08-03 09:37

首先进入root用户:

$ sudo su

密码:baohua

2. 此时按会出现Invalid mole format的情况

3. 重新make,再安装就OK了

热心网友 时间:2023-08-03 09:37

你好,记得当初也被这个问题困惑了,kernel mole 的insmod 的时候是需要版本验证的(也可以使用方法绕过版本验证)。你可以看看他到底是怎么个版本验证法,加深你的学习。
现在看看你的问题,你下载的kerne 是2.30.4的,在make的时候kernel_dir 指定也是这个。那编译出来的mole 肯定也是也是2.30.4的版本了,然后你想把这个mole insmod 到的你pc linux 系统,那就肯定不行了。
1. 你可以用的linux系统内核来编译你的hello 模块。
2. 先写个makefile:
obj-m:= hello.o
3. 然后 make -C /lib/moles/$(shell uname -r )/build M=`pwd` moles
4.编译好了再insmode. 就能成功了。但是还要看的printk 的等级了,可能你还需要dmesg才能看道你的模块的操作
5. 然后你可以把上面的过程集成道一个makefile里,直接在当前目录make 就好了。
提醒下,假如你是用自己的系统作这些实验,要当心点,有的mole可能会让你的系统出现oops。
所以建议你安装个虚拟机玩,或者真正要学的话,直接买个板子最好了。

最后看你下载了linux 2.30.4?是不是应该是2.6.30.4? 然后你的开发板是也是这个kernel?假如你是用板子,你现在可以把刚编好的模块,push 到板子,在insmod就好了。

热心网友 时间:2023-08-03 09:38

很简单,如果你fedore10(2.6.27.5) 是,你就用(2.6.27.5的内核编译你的模块就可以了,不要再下什么2.30.4版本的内核了,不然你要先把这个内核装上你的系统让他运行起来再编译你的模块。

一般来说,你安装好系统的开发工具包后, 把makefile里面 -C 后面的目录指定到 /lib/moles/kernel-version/build 这个就可以了 build了。
你是按照 《Linux Device Drivers, 3rd Edition》 一书的那个例子来的吧?

热心网友 时间:2023-08-03 09:38

他的书我也看过,你的问题应该是linux版本问题吧,记得编译驱动程序的内核和insmod时候使用的内核需要一样,
例如:我当时使用ubuntu,里边自己编译的是linux-2.6.32.4吧(记不清楚了),编译完内核之后,把内核移植到开发板,然后使用这个内核编译你的hello.c,编译生成KO文件,移动到开发板的文件系统,然后insmod就OK了,

注意需要有ARM开发板

他的书需要有一定的基础才能看懂,另外推荐韦东山的书和第一期免费视频很不错,百问网上有,韦东山的网站

热心网友 时间:2023-08-03 09:39

可以把驱动文件贴上来看看吗?
linux驱动开发insmod hello.ko失败

首先进入root用户:sudo su 密码:baohua 2. 此时按会出现Invalid module format的情况 3. 重新make,再安装就OK了

...insmod: error inserting './hello.ko': -1 Invalid module form...

你看最高版本已经到3.5.3,肯定有低版本的2.6.38啊 http://www.kernel.org/pub/linux/kernel/v2.6/ 参考资料:http://www.kernel.org/pub/linux/kernel/v2.6/

linux内核编译hello.ko: couldn't find the kernel version the module...

你编译的模块是基于2.4的,所以在2.6的内核是运行不了的,你可以modinfo hello.ko看下

内核lockdown 导致驱动无法加载的解决方法

insmod: ERROR: could not insert module xxxxxxxx.ko: Operation not permitted dmesg | grep secureboot dmesg | grep lockdown 会打印相应的 lockdown 开启显示信息 将生成的密钥和证书改名为: signing_key.x509 和 signing_key.priv 放到 Linux kernel 源码根目录。使用新编译的 kernel 重启系统后...

linux嵌入式驱动开发,makefile到问题

而为了方便你可以在任何目录下直接用make来编译驱动代码;就有以下这指令:(MAKE) -C $(KERNELDIR) M=$(PWD) modules -C 指定的就是内核文件夹所在的地方 M=当前路径 modules的,是和make 联合起来的..make modules命令,这个命令你可以去查查。.ko文件就是用insmod命令插入到内核中,在...

linux内核模块编译-通过Makefile重命名.ko文件名和模块名

执行 make 命令,生成hello.ko文件。 执行 sudo insmod hello.ko 命令,安装该模块。 执行 lsmod 命令,查看安装的模块。就会看到第一行的就是hello模块。但是,如果想自定义模块名称为 xmodule ,而不是默认的 hello ,如何实现呢?方法如下: 在Makefile中重命名obj-m并将obj-m的依赖关...

Linux驱动开发笔记(一):helloworld驱动源码编写、makefile编写以及驱 ...

export CROSS_COMPILE=arm-linux-gnueabihf- 5 编译 直接输入make,编译驱动,会生成hellowold.ko文件,ko文件就是编译好的驱动模块。步骤三:加载卸载驱动 1 加载驱动 将驱动拷贝到开发板或目标系统,然后使用加载指令:insmod helloworld.ko 会打印入口加载的printk输出。2 查看当前加载的驱动 lsmod 可以...

Linux内核:字符设备驱动框架

驱动模块有两种运行方式,一是内联内核,启动时自动加载;二是模块化,如.ko文件,通过insmod或modprobe命令加载。模块加载与卸载通过module_init和module_exit函数注册,insmod用于加载,而modprobe则处理依赖关系。字符设备驱动模板包括加载和卸载的示例,强调模块许可证的必要性。内核中的printk函数用于记录日志...

【Linux内核|驱动模型】initcall和module_init

在Linux内核开发和驱动开发中,module_init 是一个常见的宏,定义在 include/linux/module.h 文件中。它的实现会根据是否定义了 MODULE 宏有所不同,这决定了驱动是与内核编译到一起,还是单独编译为.ko文件。MODULE 的定义通常通过编译时的参数传递,可通过查看 Makefile 文件,如在编译.ko时使用特定...

Linux 关于 /sys 和 /proc

执行 insmod 后在 sys 中查找相关信息 设备实际的位置是在 /sys/devices/virtual/hello_class/hello, 但在 class 也有内容, class 只是一种分类方式, module 中有是因为 /sys/module 目录包含所有被载入Kernel的模块,无论这些模块是以内联(inlined)方式编译到内核映像文件中还是编译为外模块(.ko文件...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
电表到进户这一段儿现老旧了。我出现在不在维修电工范围之内? 传祺gs7和gs8哪个好 精液不液化症怎么治好 深圳最高楼是那座,多少层 深圳最高的大厦是哪座 深圳最高的大厦叫什么大厦,地处什么区 北京华业鲲鹏商贸有限公司怎么样? 宜昌三峡制药有限公司简介 鲲鹏万里(厦门)石材贸易有限公司怎么样? 葫芦岛鲲鹏贸易有限公司怎么样? 怎么在程序中执行 insmod mydriver.ko命令 linux 怎么增加insmod命令 make module_install和 insmod的区别 insmod dev没文件 linux命令insmod 二十四式太极拳,全套完整演练,动作规范,初学者跟着慢慢学习 二十四式太极 高分求二十四式太极拳教学视频 二十四太极拳(视频) 二十四太极拳教学视频下载 谁知道二十四式太极拳的实战视频? 求二十四式简化太极拳教学视频,额,最好带有文字解说的,谢谢各位大哥大姐哈 知道的说下啊 鸟的形态特征 八哥幼鸟怎么分公母 鸟的喙与哺乳动物的嘴有什么不同? 燕子的嘴巴是什么颜色 鸟喙的形状是与它的什么相适应的 什么是鸟喙? 软食鸟的喙大多为细长型对么 画眉嘴是怎么样的 TCL自动洗衣机能洗能排就是不能脱水xqb50_21sp,不脱水显示E3怎么... 重庆买二手房可以公积金贷款吗 信用卡贷款就是一个无底洞,越来越来怎么办 上月用信用卡办理了贷款,感觉利息太高,能不能退了 建设银行信用卡为什么可以重复按揭呢每月收我3000利息呢怎么办? 信用卡分期利息怎么算,如何维护个人信用? 外研 高一英语必修一单词听力mp3 求外研社高一英语必修一单词录音(mp3最好) 求外研版高一英语必修1单词听力,谢谢! 求外研版高一英语必修1单词听力mp3 求高中英语外研版必修一到八的音频(课文 单词)谢谢啦! 外研社高一英语必修一单词听力mp3 谁能发一下链接 外研社高中英语(必修一单词)mp3? 谁能提供外研版高一英语必修一的单词 求外研版高中英语必修一的单词及听力的MP3 微信群不小心转让给了别人,让他再转让回来他也不干,怎样才能把群拿回来? 电脑重新装系统之后桌面什么都没有怎么办 电脑装了系统之后除了桌面什么都没有 我的电脑我自己重新装了系统,可是现在桌面没有桌面了 带“虎”字的谚语
  • 焦点

最新推荐

猜你喜欢

热门推荐