专栏中心

EEPW首页 > 专栏 > kernel – 尝试加载usbhid.ko时,“ module_layout没有符号版本”

kernel – 尝试加载usbhid.ko时,“ module_layout没有符号版本”

发布人:电子禅石 时间:2020-06-24 来源:工程师 发布文章
问题描述

我正在尝试为usbhid.ko构建自己的模块,但是在编译之后,无法加载该模块。 dmesg说是no symbol version for module_layout。我想知道是什么问题?我已经使用过Ubuntu提供的内核源代码,并且还要确保内核版本相同。


最佳回答

具体来说,问题是在构建模块时,内核源代码树可能缺少Modules.symvers文件。当您构建模块时,kbuild系统实际上会警告您。如果缺少Modules.symvers,您将看到:

Warning: Symbol version dump /usr/src/linux-2.6.34-12/Modules.symvers            is missing; modules will have no dependencies and modversions.

如果您的内核启用了CONFIG_MODVERSIONS,则在构建驱动程序的modpost阶段,它将使用-m选项运行scripts /mod /modpost。如果您勇敢地看一下scripts /mod /modpost.c源代码,您会看到-m选项添加了vmlinux中的_module_layout_符号,但是,如果您的内核中没有Modules.symvers,您将无法获得该符号的CRC值,并最终收到此错误消息。

因此,有两种解决方法。


专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

联发科在台积电3nm和4nm 8500处理器上推出天玑9500,目标市场为中高端

智能家居解决方案

视频 2012-07-03

78K0微波炉解决方案

视频 2012-07-03

财经观察:缺核心技术,印度新能源电池计划放缓

终极3D集成,将颠覆未来的GPU

网络与存储 2026-01-19

180度E-Bike解决方案(基于78K0R MCU)

视频 2012-07-03

信息技术应用创新专业人员(ITP)人才培养专项座谈会成功举办

智能计算 2026-01-19

鹏鲲量子科技算法驱动决策:AI技术如何革新传统代运营模式

智能计算 2026-01-19

消息称飞书将推出首款硬件,与安克协作打造“AI录音豆”

羽乐科技荣获新金融联盟“卓越价值贡献奖”,以数据智能赋能金融业高质量发展

智能计算 2026-01-19

传三星将采用长江存储专利混合键合技术:用于400+层的第10代V-NAND闪存

巧购领带

liujt_ic 2003-06-13

智能航线升级!相机视场角航线拍照点,思翼科技发布UniGCS v3.0

国际视野 2026-01-19

应用的RF4CE协议的射频遥控器系统

视频 2012-07-03

双向可控硅实现调光技术细节

模拟技术 2026-01-19

无线遥控LED灯参考设计

视频 2012-07-03
更多 培训课堂
更多 焦点
更多 视频

技术专区