"); //-->
我正在尝试为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,目标市场为中高端
采用LM8365的分时定时器电路
采用CD4011B的定时器电路
智能家居解决方案
78K0微波炉解决方案
财经观察:缺核心技术,印度新能源电池计划放缓
从 戒 指 泄 露 的 秘 密
终极3D集成,将颠覆未来的GPU
钟控家电定时器电路
混合信号32KB ISP 闪存微控制器
男士上班装束讲究
领带六件事
180度E-Bike解决方案(基于78K0R MCU)
基于CAN 的较高层协议和子协议
信息技术应用创新专业人员(ITP)人才培养专项座谈会成功举办
鹏鲲量子科技算法驱动决策:AI技术如何革新传统代运营模式
消息称飞书将推出首款硬件,与安克协作打造“AI录音豆”
羽乐科技荣获新金融联盟“卓越价值贡献奖”,以数据智能赋能金融业高质量发展
传三星将采用长江存储专利混合键合技术:用于400+层的第10代V-NAND闪存
巧购领带
基于M68HC08系列单片机的高位DA扩展接口技术
钟控鱼缸自动充氧电路
智能航线升级!相机视场角航线拍照点,思翼科技发布UniGCS v3.0
应用的RF4CE协议的射频遥控器系统
暂时请辞去斑竹的工作!
通用定时控制器电路
基于P87LPC764 单片机的- ADC 应用设计方法初探
双向可控硅实现调光技术细节
无线遥控LED灯参考设计
基于89C2051单片机的智能毫秒计