|
发表于 2007-3-27 16:31:50
|
显示全部楼层
首先感谢youbest的不辞辛劳为我们大家奉献出一篇又一篇精华
也正是在这份手把手教程的基础上我才得以2次完成lfs
我使用的是lfs6.2-3第一次使用的 是虚拟机 基本没有担心恢复的问题
因为虚拟机有suspend的功能
现在很多人在做lfs6.2的时候仍然在参考这份非常详细的6.1教程
我第二次做lfs6.2-3到真实机器上时也是参考这份教程
因为我中间关机好几次 需要参考怎么恢复
这中间遇到了一些小教训 写到这里和大家分享
稚嫩之处请勿大笑呵呵。。。
我在做到编译内核时候遇到以下错误
*** End of Linux kernel configuration.ialog
*** Execute 'make' to build the kernel or try 'make help'.
#
root:/sources/linux-2.6.16.27# make
/bin/sh: -c: line 0: syntax error near unexpected token `('
/bin/sh: -c: line 0: `set -e; echo ' CHK include/linux/version.h'; mkdir -p include/linux/; if [ `echo -n "2.6.16.27 .file null .ident GCCGNU)4.0.3 .section .note.GNU-stack,,@progbits" | wc -c ` -gt 64 ]; then echo '"2.6.16.27 .file null .ident GCCGNU)4.0.3 .section .note.GNU-stack,,@progbits" exceeds 64 characters' >&2; exit 1; fi; (echo \#define UTS_RELEASE \"2.6.16.27 .file null .ident GCCGNU)4.0.3 .section .note.GNU-stack,,@progbits\"; echo \#define LINUX_VERSION_CODE `expr 2 \\* 65536 + 6 \\* 256 + 16`; echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'; ) < /sources/linux-2.6.16.27/Makefile > include/linux/version.h.tmp; if [ -r include/linux/version.h ] && cmp -s include/linux/version.h include/linux/version.h.tmp; then rm -f include/linux/version.h.tmp; else echo ' UPD include/linux/version.h'; mv -f include/linux/version.h.tmp include/linux/version.h; fi'
make: *** [include/linux/version.h] 错误 2
root:/sources/linux-2.6.16.27#
--------------------------------------
google后发现是udev引起的问题
我一查 我的 udev竟然忘记安装(可能前天搞的太晚困的头昏掉了)
郁闷的重新开机
使用udev安装完成前的步骤恢复作案现场
但是按照6.1这个恢复方法
当做 到/sbin/udevstart 时候怎么都找不到udevstart
进去之前虚拟机上的lfs系统发现6.2-3没有udevstart
只好小心的检查了6.2手册中 udev096安装前的准备
主要是
install -dv /lib/{firmware,udev/devices/{pts,shm}}
mknod -m0666 /lib/udev/devices/null c 1 3
ln -sv /proc/self/fd /lib/udev/devices/fd
ln -sv /proc/self/fd/0 /lib/udev/devices/stdin
ln -sv /proc/self/fd/1 /lib/udev/devices/stdout
ln -sv /proc/self/fd/2 /lib/udev/devices/stderr
ln -sv /proc/kcore /lib/udev/devices/core
安装完成udev后
为了保险起见又把后面的lfs启动脚本重新装了下
然后直接进入内核目录开始编译
这下没有error了
不知道6.1的udevstart 执行了哪些操作 期待楼下回答呵呵 |
|