免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2462 | 回复: 6
打印 上一主题 下一主题

请教关于编译内核后启动加载模块失败的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-09-14 22:19 |只看该作者 |倒序浏览
load /lib/modules/2.6.16.60-0.21-default/ modules.dep no such file or directory

我按默认的配置编译的 干净内核

不知道我有没有说清楚

论坛徽章:
0
2 [报告]
发表于 2009-09-15 00:14 |只看该作者
执行make dep或者depmod
更新模块依赖文件

论坛徽章:
0
3 [报告]
发表于 2009-09-15 08:57 |只看该作者
先谢谢楼上的
我在新编译的内核启动后
执行了这个命令
command not found
启动过程中n多模块没有加载上
很多命令都没有

论坛徽章:
0
4 [报告]
发表于 2009-09-15 10:20 |只看该作者
我是按默认的配置编译的(make defconfig)
没有make install

论坛徽章:
0
5 [报告]
发表于 2009-09-15 11:58 |只看该作者
编译完内核后,要
make modules_install
make install

第二步会去跑一些脚本,完成包括制作initrd、更新grub.conf、depmod等

论坛徽章:
0
6 [报告]
发表于 2009-09-15 20:15 |只看该作者
我是要生成一个新版本的内核
目前问题是这样解决的
把原来内核目录树中的.config拷贝到了要编译的内核中。就可以了
但是我觉得是应为我要编译的内核和系统原来的内核版本一样才可以这样的
如果版本不同就不知道怎么解决了

加载失败的原因别人是这样解释的:
新编译出来的内核和之前的驱动模块(Ko)不匹配,所有才导致加载失败
目前对这个解释还不是很理解

论坛徽章:
0
7 [报告]
发表于 2009-09-16 00:36 |只看该作者
如果版本差别不是特别大的话,拷贝.config也是可以的
不过你最好使用源码中x86的默认config来编译,机子不是太特殊的话就没问题

内核之于模块就好比库之于应用程序,是一个运行时连接的过程,针对一个库版本编译的程序,在不同版本的库上运行一般是不允许的
那么,模块不能插入的问题也就好理解了

新内核要用它自己的模块,make modules_install会解决这个问题的
另外,同样别忘了make install
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP