LinuxSir.cn,穿越时空的Linuxsir!

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

【原创】从源代码建立Linux系统之(Sysroot LFS 1.0)

[复制链接]
发表于 2008-6-10 21:03:14 | 显示全部楼层 |阅读模式
从源代码建立Linux系统之(Sysroot LFS 1.1)
作者:孙海勇


更新日志(具体更新内容见文末):

  2008年7月6日:1.1发布(可支持UTF-8编码的中文及其它文字在终端上直接显示
  2008年6月8日(端午节):1.0 正式版发布
  2007年8月1日:试验版本发布

前言
 对于大多数制作过LFS的朋友,对于LFS通过 工具链->临时系统->基本系统 的模式应该已经比较熟悉了,不知道你是否想过在不影响制作结果的情况下能否将制作过程进行简化?我一直希望能尽可能的简化制作过程。

  在经历过CLFS-Sysroot的制作后,我对于Sysroot的制作方式颇为着迷,因此萌生了将Sysroot和LFS结合起来的想法,因此便有了本文,我将其命名为“Sysroot LFS”,同时我在制作过程中采用了gnu的hashstyle,在系统的性能上有一定的程度的提高。

1.0版本 全文请查看:http://zdbr.net.cn/download/Sysroot-LFS-1.0.htm
1.1版本 全文请查看:http://zdbr.net.cn/download/Sysroot-LFS-1.1.htm
发表于 2008-6-10 23:40:29 | 显示全部楼层
感谢楼主,再次学习中
回复 支持 反对

使用道具 举报

发表于 2008-6-11 00:00:40 | 显示全部楼层
这个要藏了慢慢品。搬个板凳去听课。
回复 支持 反对

使用道具 举报

发表于 2008-6-11 15:28:11 | 显示全部楼层
lz 我们通过不同的途径达到了类似的效果。

请参考 [color="Blue"]Sysroot 方式从源码构建完全本地编译的 GNU/Linux 系统

我的方法结合了CLFS-Sysroot 和 CLFS-1.0 ,以 CLFS-Sysroot 方式建立工具链,以 CLFS-1.0 方式编译软件包的顺序建立系统,和你的方法比较,更具一般性。

按我的方法,使用伪交叉编译、chroot方式,则和你的方法基本无差别。

伪交叉编译方式,建立工具链时,有点小问题,有可能引入宿主gcc spec,gcc-4.2系列无此问题,gcc-4.3.0存在此问题(请参考 [color="Blue"]用GCC 4.3-20040810构造SYSROOT工具链)。
回复 支持 反对

使用道具 举报

发表于 2008-6-11 17:02:38 | 显示全部楼层
有没有必要使用 LDFLAGS="-Wl,--hash-style=gnu" 进行优化?

如果系统主要运行c写的软件包, "--hash-style=gnu" 会提供大的性能提升吗?

我还要运行一些预编译软件包,如ooo,使用"--hash-style=gnu"后,会不会出现不兼容?
回复 支持 反对

使用道具 举报

发表于 2008-6-11 23:41:53 | 显示全部楼层
看了  LFS版面,发现自己是多么多么的菜啊。.....

欧洲杯不看了。学习。(但是决赛还是要看的) :(
回复 支持 反对

使用道具 举报

发表于 2008-6-14 13:40:40 | 显示全部楼层
glibc 2.7的strtod似乎有问题,会导致M4的check失败(LFS中),见:http://bugs.gentoo.org/show_bug.cgi?id=216200

@1987a:
gnu hash 提高的是载入效率,应该是对一些大的,使用库比较多的程序有比较明显的效果

另外,我看 glibc 的 Changelog 里面写的似乎是专程加了 --hash-style=both 的,不知道是不是为了防止预编译软件的兼容问题,反正我编译的时候是让它 --hash-style=both 了,毕竟是比较核心的库,安全第一,安全第一
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-7-6 22:38:41 | 显示全部楼层
更新到1.1版本(可支持UTF-8编码的中文及其它文字在终端上直接显示)
回复 支持 反对

使用道具 举报

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

本版积分规则

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