刚刚做好LFS(6.2),做个总结

弄了3天总算是把LFS弄好了,都是按照LFS一步步来的,这里就只说一下有问题的地方。

第一个错误是在第五章第一次安装linux-libc-headers-2.6.12.0时出错

  文档中的命令:

  cp -Rv include/asm-i386 /tools/include/asm

cp -Rv include/linux /tools/include

错误忘了好像是提示没有include/asm-i386这个文件或目录(事实上是有的,有点想不通),我嫌麻烦就直接使用宿主lfs-livecd的/usr/include中的文件,即cd到/usr/include中,再使用:

cp -Rv asm /tools/include/asm

cp -Rv linux /tools/include.

(这里我是先进/usr/include看看然后再操作,可以直接cp -Rv /usr/include/asm/tools/include/asm)

但是在第六章中再次安装是没有这个问题,但是命令有点不一样

文档中的命令:

install -dv /usr/include/asm (

cp -Rv include/asm-i386/* /tools/include/asm

cp -Rv include/linux /tools/include
我想大概是命令的问题(还是想不通,只是猜想),用类似第六章的命令(cp -Rv include/asm-i386/* /tools/include/asm)大概在第五章就不会出错了,没有验证,有人做的话建议可以试一下看看。不过我之前的办法在后面也没有出项问题,当然还是建议根据文档来。

第二个错误是做引导的时候编译完内核,做完引导,重启后遇到Kernel panic ——内核打出类似下面的一段话,然后死机:

VFS: Cannot open root device "sda8" or unknown-block(0,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) 

因为我virtualbox里的虚拟机的硬盘是SICI的,所以和文档中grub时使用的hdax不一样,而是使用sdax,所以我开始以为可能是grub中menu.list和fstab中的设置问题。但是试了很多次都没用,后面想了一下内核其实已经引导起来了,应该是内核的编译设置的错误。网上查了一下,得到两个比较有用信息如下,这两个都是说在内核增加SICI的支持,为了不需要在grub设置中再增加init的设置要把它编译进内核不能以模块启动。

1.http://hi.baidu.com/zkheartboy/item/4e3a5af2b0d94d0fc6dc452b

这个是要设置Device Driver
|---->DriverATA/ATAPI/MFM/RLL
|---->Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
|----->generic/default IDE chipset support 
|----->PCI IDE chipset support
|---->Generic PCI IDE Chipset Support

2.http://www.linuxsir.org/bbs/thread244052.html

这个是说要在Device Drivers->SCSI device support->SCSI low-level drivers下加入BusLogic SCSI support的支持

但是这两个我都增加了,重新编译后新内核还是出现同样错误。因为浪费了很多时间,我想暂时先就这样,先把LFS运行起来,错误以后再搞清楚。所以后面我直接使用了livecd的.config。于是问题解决!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值