embedded-linux - YOCTO:无法将 linux 模块插入内核:版本不同
问题描述
我正在使用YOCTO PROJECT为我的嵌入式板构建一个 linux 操作系统。我有一个名为uleds的模块,我想将它插入到我的内核中,所以我录制了这个insmod命令:
insmod /lib/modules/4.14.73-linux4sam-6.0-dirty/kernel/drivers/leds/uleds.ko
但是出现了一个错误:
uleds:版本魔法“4.14.88-01445-g234c56a01768-dirty mod_unload ARMv7 p2v8”应该是“4.14.73-linux4sam-6.0-dirty mod_unload ARMv7 p2v8”
uleds:版本魔法“4.14.88-01445-g234c56a01768-dirty mod_unload ARMv7 p2v8”应该是“4.14.73-linux4sam-6.0-dirty mod_unload ARMv7 p2v8”
insmod:无法插入'/lib/modules/4.14.73-linux4sam-6.0-dirty/kernel/drivers/leds/uleds.ko':无效模块
我看到我的linux内核版本和模块版本不一样。我的问题是如何解决这个问题,以便将模块插入内核?
解决方案
该模块未使用与您的内核相同的版本(在嵌入式设备上)编译。
您只需使用正确的内核编译模块即可。
您需要在 Yocto 的元数据中找到您的内核配方,下载它(将下载的内核的存储库重置为配方的 SRCREV),然后构建您的模块。
推荐阅读
- python - 在 PyTorch C++ 扩展中,如何访问张量中的单个元素并将其转换为标准 C++ 数据类型?
- flutter - 在垂直页面浏览中调整图像大小而不影响每个元素之间的空间?
- python - python urllib3 或使用应用程序 ID 和应用程序令牌请求身份验证
- file - GetFullPathName 是否适用于目录名称?
- reactjs - 首次登录时的导航帮助
- java - 使用java根据属性值追加或替换XML元素
- python - 如何使用 python kivymd 中的方法在构建器中添加 TwoLineIconListItem?
- flutter - Flutter,如何将页面从横向设置回纵向模式
- android - 使用改造向服务器发出请求时出错
- c - 如何在 C 中检查临时文件?