无法加载模块,这是怎么回事?

发布于 2022-07-21 21:39:40 字数 301 浏览 19 评论 3

我写了个模块, mymodule.c
gcc -c mymodule.c之后,插入模块:
# insmod ./mymodule.o
此时报错说:编译采用的内核版本为×××-×××-×custom 而目前运行的内核版本为: ×××-×××-x
请问这如何处理。
我用的时VMWARE下的linux,确实重新编译过内核,因此每次linux引导的时候,总是需要选择×××-×××-×custom 还是×××-×××-x,由于×××-×××-×custom无法启动,所以实际上我一直引导的内核是×××-×××-×, 请问以上模块插入错误如何解决呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

顾忌 2022-07-23 20:14:31

原帖由 docterling 于 2006-5-16 12:48 发表
改头文件路径或者把版本检查去掉

是正道,我改了头文件中的版本。^_^

-不疑不惑不回忆 2022-07-22 22:26:12

你头文件路径设置错误,这些问题问过好多遍了,你可以在网上查一下,看看一般模块如何编译。

你这种问题一般只要用-I把你目前用的内核头文件链过来就可以了。
还有,如果你用的是2.6的内核,不能这样编译,它有一个编译蓝本,你搜一下,然后直接套用就可以了。

爱*していゐ 2022-07-21 22:02:23

改头文件路径或者把版本检查去掉

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文