首页 > 系统管理 > LFS > LFS7.6 012 临时系统建立完成及总结
2015
03-09

LFS7.6 012 临时系统建立完成及总结

LFS7.6 012 临时系统建立完成及总结

一、退出lfs:

1.这步是可有可无的,如果你打算今后还要用/tools里面的东西,那么可以strip一下来减少占用的磁盘空间,但如果做完目标系统后就删除了,不Strip也可以,反正最后也是要删掉的。

strip --strip-debug /tools/lib/*
/usr/bin/strip --strip-unneeded /tools/{,s}bin/*

2.info和man里面的内容在制作过程中没什么用处,所以删掉也没啥关系。

rm -rf /tools/{info,man}

3.退出lfs用户(这步不要少了)

exit

二、关于制作临时的系统我们都安装了什么?

1. Binutils-2.24

GNU Binary Utilities或binutils是一整套的编程语言工具程序,用来处理许多格式的目标文件。当前的版本原本由在Cygnus Solutions的程序员以Binary File Descriptor library(libbfd)所撰写。这个工具程序通常搭配GCC、make、和GDB这些程序来使用。

刚开始时,这个包内只有几支程序,但后来,由于功能需求近似,陆续加入了GNU汇编器(GAS)和GNU连接器(GLD)。一般来说,这些程序都很简单,大部分的复杂性都存在于Binary File Descriptor library和libopcodes这些库里头。

原来的BFD版本由David Henkel-Wallace和Steve Chamberlain所撰写。Ken Raeburn和Ian Lance Taylor曾维护过。目前则是由Nick Clifton负责维护此版本。至于Linux上的版本,由H.J. Lu在维护。

2. GCC-4.9.1 

GNU编译器套装(英语:GNU Compiler Collection,缩写为GCC),一套编程语言编译器,以GPL及LGPL许可证所发布的自由软件,也是GNU项目的关键部分,也是GNU工具链的主要组成部份之一。GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。1985年由理查德·马修·斯托曼开始发展,现在由自由软件基金会负责维护工作。

原名为GNU C语言编译器(GNU C Compiler),因为它原本只能处理C语言。GCC很快地扩展,变得可处理C++。之后也变得可处理Fortran、Pascal、Objective-C、Java、Ada,以及Go与其他语言。

许多操作系统,包括许多类Unix系统,如Linux及BSD家族都采用GCC作为标准编译器。苹果电脑Mac OS X 操作系统也采用这个编译器。

原本用C开发,后来因为LLVM、Clang的崛起,令GCC更快将开发语言转换为C++。许多C的爱好者在对C++一知半解的情况下主观认定C++的性能一定会输给C,但是Taylor给出了不同的意见,并表明C++不但性能不输给C,而且能设计出更好,更容易维护的程序(GCC's move to C++)。

3. Linux-3.16.2 API Headers

为了供系统C库(在LFS中是Glibc)使用,Linux 内核需要公开应用程序接口 (API) 。 这是通过处理Linux内核源程序tar包中的各种C头文件而实现的。

4. Glibc-2.20

GNU C库(GNU C Library,又称为glibc)是一种按照LGPL许可协议发布的,公开源代码的,免费的,方便从网络下载的C的编译程序。GNU C运行期库,是一种C函数库,是程序运行时使用到的一些API集合,它们一般是已预先编译好,以二进制代码形式存在Linux类系统中,GNU C运行期库通常作为GNU C编译程序的一个部分发布。

Glibc最初是自由软件基金会为其GNU操作系统所写,但目前最主要的应用是配合Linux内核,成为GNU/Linux操作系统一个重要的组成部分。

5. Libstdc++-4.9.1

C++中的标准程序库(简称标准库)是类库和函数的集合,其使用核心语言写成。标准程序库提供若干泛型容器、函数对象、泛型字符串和流(包含交互和文件I/O),支持部分语言特性和常用的函数,如开平方根。C++标准程序库也吸收了ISO C90 C标准程序库。标准程序库的特性声明于std名字空间之中。

标准模板程序库是C++标准程序库的子集,包含容器、算法、迭代器、函数对象等。也有些人使用术语STL代表C++标准程序库。

使用C++标准程序库时,不必加上“.h”。

6. Tcl-8.6.2

Tcl(发音 tickle)是一种脚本语言。由John Ousterhout创建。TCL经常被用于快速原型开发 RAD、脚本编程、GUI编程和测试等方面。

7. Expect-5.45

Expect是Unix系统中用来进行自动化控制和测试的软件工具,由Don Libes制作,作为Tcl脚本语言的一个扩展,应用在交互式软件中如telnet,ftp,Passwd,fsck,rlogin,tip,ssh等等。该工具利用Unix伪终端包装其子进程,允许任意程序通过终端接入进行自动化控制;也可利用Tk工具,将交互程序包装在X11的图形用户界面中。

8. DejaGNU-1.5.1

DejaGnu就是利用Expect写成的一组测试套件。它被大量地应用于测试 gcc,对于远程目标的测试例如嵌入式开发也是非常合适的。

9. Check-0.9.14

Check是一个C语言的单元测试框架(开源程序包)

Check不能称之为软件,因为主要是几个.h头文件和.c文件,并没有可执行文件,它主要是和应用文件一起编译,运行,来检查应用文件中函数的BUG。在实际应用中,主要应用在linux上,用法非常类似于Junit。

10. Ncurses-5.9

ncurses(new curses)是一个程序库,它提供了API,可以允许程序员编写独立于终端的基于文本的用户界面。它是一个虚拟终端中的“类GUI”应用软件工具箱。它还优化了屏幕刷新方法,以减少使用远程shell时遇到的延迟。

11. Bash-4.3

bash,Unix shell的一种,在1987年由布莱恩·福克斯为了GNU计划而编写。1989年发布第一个正式版本,原先是计划用在GNU操作系统上,但能运行于大多数类Unix系统的操作系统之上,包括Linux与Mac OS X v10.4都将它作为默认shell。它也被移植到Microsoft Windows上的Cygwin与MinGW,或是可以在MS-DOS上使用的DJGPP项目。在Novell NetWare与Andriod在上也有移植。1990年后,Chet Ramey成为了主要的维护者。

为Bourne shell的后继兼容版本与开放源代码版本,它的名称来自Bourne shell(sh)的一个双关语(Bourne again / born again):Bourne-Again SHell。

12. Bzip2-1.0.6

bzip2是Julian Seward开发并按照自由软件/开源软件协议发布的数据压缩算法及程序。Seward在1996年7月第一次公开发布了bzip2 0.15版,在随后几年中这个压缩工具稳定性得到改善并且日渐流行,Seward在2000年晚些时候发布了1.0版。

13. Coreutils-8.23

GNU核心工具组(英语:GNU Core Utilities,亦常缩写为Coreutils)是一个包含了多个类Unix所需的基本工具的软件包,其亦是之前许多类似软件包(如textutils(文本工具组)、shellutils(shell工具组)、fileutils(文件工具组)等)所包含工具的集合。

14. Diffutils-3.3

文本差异比较工具:

Diffutils 软件包里的程序向你显示两个文件或目录的差异,常用来生成软件的补丁。

15. File-5.19

文件包包含一个实用程序,用于确定一个给定的文件或文件的类型。

16. Findutils-4.4.2

GNU查找工具组,或findutils是一个GNU软件包,它提供了基本文件搜索工具,来搜索GNU和类Unix的系统中的目录。它包含了find、locate、updatedb和xargs工具的实现。然而,在各种Linux发行版的最新版本中,locate和updatedb已经被剥离到一个单独的包中。

17. Gawk-4.1.1

AWK是一种优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言(其名称得自于它的创始人阿尔佛雷德·艾侯、彼得·温伯格和布莱恩·柯林汉姓氏的首个字母)的最大功能取决于一个人所拥有的知识。AWK提供了极其强大的功能:可以进行正则表达式的匹配,样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有精美特性。实际上AWK的确拥有自己的语言:AWK程序设计语言,三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。gawk是AWK的GNU版本。

最简单地说,AWK是一种用于处理文本的编程语言工具。AWK在很多方面类似于Unix shell编程语言,尽管AWK具有完全属于其本身的语法。它的设计思想来源于SNOBOL4、sed、Marc Rochkind设计的有效性语言、语言工具yacc和lex,当然还从C语言中获取了一些优秀的思想。在最初创造AWK时,其目的是用于文本处理,并且这种语言的基础是,只要在输入数据中有模式匹配,就执行一系列指令。该实用工具扫描文件中的每一行,查找与命令行中所给定内容相匹配的模式。如果发现匹配内容,则进行下一个编程步骤。如果找不到匹配内容,则继续处理下一行。

18. Gettext-0.19.2

gettext是GNU国际化与本地化(i18n)函数库。它常被用于编写多语言程序。

19. Grep-2.20

grep是一个最初用于Unix操作系统的命令行工具。在给出文件列表或标准输入后,grep会对匹配一个或多个正则表达式的文本进行搜索,并只输出匹配(或者不匹配)的行或文本。

20. Gzip-1.6

Gzip是若干种文件压缩程序的简称,通常指GNU计划的实现,此处的gzip代表GNU zip。也经常用来表示gzip这种文件格式。软件的作者是Jean-loup Gailly和Mark Adler。在1992年10月31日第一次公开发布,版本号0.1。

OpenBSD中所包含的gzip版本实际上是compress程序,其对gzip文件的支持在OpenBSD 3.4中被添加,此处的g代表免费(gratis)

21. M4-1.4.17

m4是一个通用的宏处理器,由布莱恩·柯林汉和丹尼斯·里奇设计。m4是基于Ritchie早先为AP-3小型机开发的m3宏处理器扩展的。

22. Make-4.0

在软件开发中,make是一个工具程序(Utility software),经由读取叫做“makefile”的文件,自动化建构软件。它是一种转化文件形式的工具,转换的目标称为“target”;与此同时,它也检查文件的依赖关系,如果需要的话,它会调用一些外部软件来完成任务。它的依赖关系检查系统非常简单,主要根据依赖文件的修改时间进行判断。大多数情况下,它被用来编译源代码,生成结果代码,然后把结果代码连接起来生成可执行文件或者库文件。它使用叫做“makefile”的文件来确定一个target文件的依赖关系,然后把生成这个target的相关命令传给shell去执行。

许多现代软件的开发中,集成开发环境已经取代make,但是在Unix环境中,仍然有许多任务程师采用make来协助软件开发。

23. Patch-2.7.1

patch是Unix上的应用程序,由美国程式设计师拉里·沃尔(Larry Wall)于1985年所开发。它会利用一种名叫“patch file”(有时直接被称为 patch)的文字档案,来更新文字档案。

patch file 可以由另一个 Unix上的应用程序 diff所产生,也可以由CVS,Subversion,Git等程式产生。

24. Perl-5.20.0

Perl是高级、通用、直译式、动态的程序语言。最初设计者拉里·沃尔(Larry Wall)为了让在UNIX上进行报表处理的工作变得更方便,决定开发一个通用的脚本语言,而在1987年12月18日发表。目前,版本中包含Perl 5以及Perl 6(开发中)。

Perl借用了C、sed、awk、shell脚本以及很多其他编程语言的特性。其中最重要的特性是Perl内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。

2000年开始,目前拉里·沃尔开始开发Perl 6,来作为Perl的后继;不过,Perl 6语言的语法有很多转变,所以Perl 6被视为Perl家族中的另一个语言。

Perl语言的应用范围很广,除CGI以外,Perl被用于图形编程、系统管理、网络编程、金融、生物以及其他领域。由于其灵活性,Perl被称为脚本语言中的瑞士军刀。

25. Sed-4.2.2

sed(意为流编辑器,源自英语“stream editor”的缩写)是Unix常见的命令行程序。sed用来把文档或字符串里面的文字经过一系列编辑命令转换为另一种格式输出。sed通常用来匹配一个或多个正则表达式的文本进行处理。

分号(;)可以用作分隔命令的指示符。尽管sed脚本固有的很多限制,一连串的sed指令加起来可以编程像 仓库番、快打砖块、甚至俄罗斯方块等电脑游戏的复杂程序。

26. Tar-1.28

Unix和类Unix系统上的压缩打包工具,可以将多个文件合并为一个文件,打包后的文件名亦为“tar”。目前,tar文件格式已经成为POSIX标准,最初是POSIX.1-1988,目前是POSIX.1-2001。 本程序最初的设计目的是将文件备份到磁带上(tape archive),因而得名tar。

27. Texinfo-5.2

Texinfo软件包包含读取、写入和转换 Info 文档的程序,以提供系统文档

28. Util-linux-2.25.1

util-linux是一个Linux操作系统的标准软件包。当开发停滞时,一群人创建了复刻util-linux-ng(ng意为“下一代”),但截至2011年1月已更名回util-linux,目前是包的正式版本。

29. Xz-5.0.5

xz 是一个使用 LZMA压缩算法的无损数据压缩文件格式。 和gzip与bzip2一样,同样支持多文件压缩,但是约定不能将多于一个的目标文件压缩进同一个档案文件。 相反,xz通常作为一种归档文件自身的压缩格式,例如使用tar或cpioUnix程序创建的归档。 xz 在GNU coreutils(版本 7.1 或更新)中被使用。 xz 作为压缩软件包被收录在 Fedora (自Fedora 12起), Arch Linux, FreeBSD、 Slackware Linux、CRUX 和 Funtoo Linux中。

下一步:LFS7.6 013 开始建立LFS系统




最后编辑:
作者:PurStar
PurStar
这个作者貌似有点懒,什么都没有留下。
捐 赠您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请狠狠点击

留下一个回复