glinux开发摘要(2)-构建目录结构

下面的操作步骤青蛙基本上是从 lfs6.3 学来的,所以会有$LFS这个变量,如果你对lfs也有兴趣,可以 去它的官方网站 看看。

青蛙编译完成了toolchain以后,就可以开始建造glinux的目录体系了。

首先,构造虚拟内核文件系统(Virtual Kernel File Systems),这个东东是跟内核通信的一个途径。

执行下面的命令,来建立文件系统的挂载点:

mkdir -pv $LFS/{dev,proc,sys}

然后,建立几个必要的设备文件,

mknod -m 600 $LFS/dev/console c 5 1
mknod -m 666 $LFS/dev/null c 1 3

青蛙准备用udev来管理设备文件,所以只建立这两个文件就够了, 其他文件udev会在系统启动的时候自动创建 …

more ...

glinux开发摘要(1)--编译环境制作

在uty同学的积极鼓励下,青蛙开始了glinux下一个版本的制作 (关于glinux的历史,欢迎回顾青蛙从前的日志)。

一开始,青蛙准备利用debian现成的编译环境, 但是后来突然想自己构建一个工具链比较好。 工具稳定下来,做出来的东西才比较有保障。

于是,青蛙从新拾起lfs,开始第二轮lfs征程, 不过这次lfs只做三分之一,青蛙的目标就是:lfs6.3的Toolschain。

具体操作过程没啥好说的,简单的step by step就好, 但是在制作过程中,遇到了几个bug (可能也算不上bug,可能是青蛙系统的原因)。

这第一个,就是在glibc-2.5.1这步,会遇到下面这个错误:

mawk: scripts/gen-sorted.awk: line 19: regular expression compile failed (bad class -- [], [^] or [)
/[^
mawk: scripts/gen-sorted.awk: line 19 …
more ...

奋斗三天 LFS终于成功

从前天晚上开始做lfs-6.1,到今天上午12点,终于启动到了lfs系统下面.

先恭喜自己一下.呼呼.

这次lfs不是那么完美的,因为最后一步编译的内核没有起来. 估计是没有initrd的原因.但是说到底还是我的内核配置有问题. 我直接把宿主系统上的2.6.18内核抓来用了.嘿嘿,这还是算是lfs的吧...

秀几个图吧.

先是grub:

grub.jpg

然后是启动起来,login的界面: (嗯,我把这个系统命名为gLinux0.02 哈哈 大家还记得gLinux0.01吧 -_-)

login.jpg

然后是uname -a: lfs-6.1默认的是2.6.11.2内核,但是我编译的起不来,现在看到的是debian的2.6.18内核.

以后偶再也不敢说编译内核简单了,最近10次编译内核全部以失败告终,泪...

uname.jpg

最后是lfs ID的截图:

lfsID.jpg

列一下我的参考资料吧.这次做lfs偶换掉了几个6.1默认的包,用了6.1.1或者6.2中的包.所以从6 …

more ...