构建LFS的一点感性思考

作者:ghxandsky 发布时间:2010-11-28 21:20:07 分类: 自由哲学 情感宣泄 评论(0)

最近,和毕业的一个学长聊一些使用GNU/Linux系统的感受。

他以前在学校念软件工程,而现在是从事GNU/Linux嵌入式开发,可谓是业界的一份子。

和他的交流中,他说他现在和刚刚离开学校的时候进步很多,特别是现在的上司给他很多的提示和空间,让他可以很好的修炼“内功”。虽然收入没有网易盛大等辈的可比,不过,从事GNU相关的领域,也许对于他来说,是不可替代的。

他分享说,他现在有两个工作平台,一个是Debian,一个LFS,并且正在前者过渡到后者。


之前了解过LFS=Linux FromScratch,是一个让用户根据手册内容,从网上下载各个基础软件,根据手册编译安装步骤和自己的调整,安装一个属于自己定制的GNU/Linux系统。当时恨对于GNU和Linux,以及其他工具并没有很深入的认识。当时,刚刚从ubuntu转移到debian上。

突然间心血来潮,根据官方和中文手册(在linuxsir上有前人分享经验:http://www.linuxsir.org/bbs/thread322894.html),安装编译了LFS6.3,之所以使用6.3,我考虑的是资料齐全和机器运行速度。

LFS的编译和安装没有想象中这么的困难(或许我还是没有弄懂很多概念问题和补丁细节),我在debian宿主上,挂在一个硬盘,在第一个分区编译了LFS的工具集合,然后用这些工具集合编译了LFS的基础软件。很激动地发现,原来GCC的编译是这样那样的可爱,一个自编译的程序,通过再编译来比较两次编译的程序结果。真的是膜拜FSF的神人。

LFS编译关键就是GCC,Glibc和GNU binutils三大软件,确保这三个软件的稳定性。我在编译GCC时候打开了Fortran,Java和objet-c等其他语言编译,为了在LFS系统编译其他科学工程软件,例如GNU Octave和R。

编译完LFS系统,直接从第一个硬盘添加menu.lst来启动LFS。

第一次启动很顺利,还有那可爱的小企鹅!

进入系统后,发现之前打上的内核中文补丁可以直接输出中文,不用其他中间字符转换工具。

接下来几天抽一点点时间编译了Guile和Emacs,MPB和MEEP,MPG321和MOC,还有GSL和R,Ruby和Python也编译了。这些软件的源代码包,选择以debian lenny源代码为主、少数来自sf.net的“策略”,为的是让LFS环境更加稳定。

终于在LFS下构建了声音系统,用moc来播放音乐,解放了工作中的沉闷。不过,网络模块还没有构建,只是编译了wget和w3m,还是想把网络模块弄好,而且可以用PPPOE拨号。

很喜欢./configure --help | less,看看有什么高级特性和扩展,以前只是一直apt-get install,现在自己是系统的主人了,想安装什么就安装什么的,而且完全可以自己定制。

回想自己,从 ubuntu ---> debian ---> LFS ,总是觉得一直在“逃避”;又或者是,一直在“追求”。

下一步就是在LFS构建Xorg,用上基本的twm,然后编译一个fvwm,然后编译firfox,做到完全定制的策略。

fetchmail+mutt+msmtp收发邮件真的很好玩很舒服,而且可以直接调用vim,增加了不少乐趣。

自由的追求是一种乐趣,可是“Freedom is NOT free”。自由的争取,很依靠个人和社群的能力。

或者,对于大多数人的说,自由或者只是一种奢望,一种膜拜。可是,当提起勇气面对困难的时候,自己就靠近自由一步了。不断地努力学习和提供能力,修炼思想,更快乐很舒服地享受人生的意义。

PS:Linuxsir(http://www.linuxsir.org/)是国内为数不多的高质量专业的GNU|Linux|BSD|Unix网站。这里有关于LFS方案的专题讨论。
  1. 下一页 »