LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1189|回复: 4

编译内核出错 请高手指点

[复制链接]
发表于 2005-10-3 17:50:24 | 显示全部楼层 |阅读模式
我在RH9.0环境下升级2.6.9内核出错(原来的核心是2.4.20-8)
把压缩文件CP到/USR/SRC/下解压
进入新的内核目录
曾经在备份后把/usr/include/下的对应联接(asm linux )删除。再建新联接,但无法启动编译脚本。后来把备份恢复进行以下步骤:
make mrproper
make config
make dep时提示:make dep is unnecessary now
make zImage 却可以正常下去。完成后在/usr/src/linux/arch/i386/boot/下找不到影像
发表于 2005-10-3 19:30:36 | 显示全部楼层
找点讲2.6内核编译的材料看看
2.6不需要make dep
回复 支持 反对

使用道具 举报

发表于 2005-10-4 02:00:21 | 显示全部楼层
自己找一下,这里跟www.linuxfans.org都有很多文章.

RH 9 升级到 2.6.X 跨越比较大,升级过程会很复杂,在升级内核前你先要安装module-init-tools,lvm2 ,device-mapper,以及升级mkinitrd。
在2.6.X下的编译过程已经作了简化,具体如下,
cd /usr/src
tar -zxvf  linux-2.6.x.tar.gz
cd linux-2.6.x
make mrproper
make xconfig
make
make modules_install install

由于kernel 2.6.x 跟kernel 2.4.X 有很大的变化 所以升级后的USB,cdrom等都不能正常使用,原因主要是modules名字改变了,因此要作响应的修改。
回复 支持 反对

使用道具 举报

发表于 2005-10-10 18:11:38 | 显示全部楼层
看看 Documentation/Change 里面都写了些什么,gcc modutils 等等要升级到什么版本,还有具体的一些问题,再动手
回复 支持 反对

使用道具 举报

发表于 2005-10-24 15:35:39 | 显示全部楼层
我在vmware5.0中虚拟了RedHat9; 内核版本为2.4.20;我就试着先编译
它里面附带的源代码。在编译内核之前查阅了相关说明,其步骤大概都一样;
确定每一步操作无误,配置内核时,只是执行了make xconfig,未做任何改动,
然后就是make dep;make clean;make bzImage;

然后执行make modules;make modules_install,提示了很多
Nothing to be done with ....,应该是正常的吧,因为我没做任何配置,
也没有Error信息提示;最后也生成了system.map 和bzImage;

然后就更改了grub.conf文件中kernel那一行:
编译后改为:kernel /boot/vmlinuz-2.4.20 ro root=LABEL=/
原文件中是:kernel /boot/boot_bak/vmlinuz-2.4.20 ro root=LABEL=/
因为我把原先的System.map和vmlinuz-2.4.20两个文件放到boot_bak中了

但是在重新加载刚才编译的内核时提示:
VFS:cannot open root device "LABEL=/" or 00:00
Please append a correct "root=" boot option
kernel panic: VFS: unable to mount root fs on 00:00
但用它原先的内核文件能成功引导,其它参数均不变

我也试着编译过2.4.xx和2.0.xx;但结果几乎都是一
谁有兴趣在虚拟机下编译下内核?不用编译新的,就编译它带的那个
如果成功的话,在线交流下:qq :  187366830
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表