LFS-6.1.2 安装实录[附带全过程的详细命令][ZT]
时间:2006-09-20 来源:rainballdh
LFS-6.1.2 安装实录[附带全过程的详细命令]
版本:LFS-Book-6.1.2 ,使用官方的 Live-CD 6.1.2
安装环境为:
VMWare-5.0-13124
虚拟机内存:256M
虚拟机硬盘:(IDE)2G ;没采用默认的SCSI,似乎会有莫名其妙的问题
虚拟机CD-ROM:lfs-x86-6.1-2.iso
CPU:p-M 1.6G
去掉了默认的usb和声卡设备
==================================
目前只完成到第5章,第6章尚未开始,等第6章完成了在补一贴
==================================
开机:linux expert
时区(Localtime):Asia/Shanghai
区域(Local):C (默认)[因为没有中文]
键盘布局(Keyboard):us
以下内容有"..."的地方是省略的一些交互操作,想玩LFS的弟兄想必都知道该怎么操作吧。
===============================================
切换到根目录,并指定LFS环境变量
#cd /
#export LFS=/mnt/lfs
将所有空间划给hda1,并标记为可引导分区
#fdisk /dev/hda
...
在hda1上建立ext2文件系统
#mke2fs /dev/hda1
挂载新的hda1分区
#mkdir -p $LFS
#mount /dev/hda1 $LFS
复制所有将要用到的源代码和补丁,并将sources目录设置为可写和sticky模式
#mkdir /mnt/cdrom
#mount /dev/cdrom /mnt/cdrom
#cp -R /mnt/cdrom/sources/ $LFS/
#chmod a+wt $LFS/sources
#umount /dev/cdrom
创建$LFS/tools目录[存放临时工具链]
#mkdir $LFS/tools
在宿主系统创建$LFS/tools目录的软连接(符号链接),
注意:是链接到宿主系统的根目录!
#ln -s $LFS/tools /
添加LFS用户
#groupadd lfs
#useradd -s /bin/bash -g lfs -m -k /dev/null lfs
#passwd lfs
...
修改$LFS/tools和$LFS/sources目录所有权
#chown lfs $LFS/tools
#chown lfs $LFS/sources
切换到lfs用户,并转到根目录
#su - lfs
$cd /
设置bash工作环境1(.bash_profile)
$cat > ~/.bash_profile << "EOF"
>exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$' /bin/bash
>EOF
设置bash工作环境2(.bashrc)
$cat > ~/.bashrc << "EOF"
>set +h
>umask 022
>LFS=/mnt/lfs
>LC_ALL=POSIX
>PATH=/tools/bin:/bin:/usr/bin
>export LFS LC_ALL PATH
>EOF
[★记住★:/tools/ --> $LFS/tools/ (hda1=$LFS)]
运行.bash_profile文件,以使刚刚配置的环境生效
$source ~/.bash_profile
=============================
Chapter 5. 构建临时编译环境[仅包含必要的工具,用于最终的LFS系统]
----------------------------------------------------------
构建这个小系统分两步进行:
第一步是构建一个新的不依赖于宿主系统的工具链(编译器、汇编器、连接器、库文件以及一些有用的软件)
第二个步骤是利用这个工具链去构建其它基本的工具
本章中编译的文件将安装在 $LFS/tools 目录下,
这些软件包编译出来是起临时作用的,我们不希望这些软件和即将建立的 LFS 系统混杂在一起。
安装完每个软件包之后,删除其源文件和编译目录,除非另有特别的指令。
=============================
Binutils-2.15.94.0.2.2 - Pass 1
-----------------------
解包
$mkdir $LFS/sources/binutils-pass1
$tar -xvjf $LFS/sources/binutils-2.15.94.0.2.2.tar.bz2 -C $LFS/sources/binutils-pass1
解包后的文件所在目录:$LFS/sources/binutils-pass1/binutils-2.15.94.0.2.2
但是我们要用一个另外的目录来编译它,而不是在源码目录中:
$mkdir $LFS/sources/binutils-pass1/binutils-build
$cd $LFS/sources/binutils-pass1/binutils-build
配置编译脚本[★再次提醒★:/tools/ --> $LFS/tools/ (hda1=$LFS)]
$$LFS/sources/binutils-pass1/binutils-2.15.94.0.2.2/configure --prefix=/tools --disable-nls
编译和安装
$make && make install
为后面"锁定"glibc准备连接器脚本
$make -C ld clean
$make -C ld LIB_PATH=/tools/lib
现在不能删除Binutils的编译目录和源码目录,我们在本章后面部份还要用到它们,所以请别动它们。
------------------------------------
GCC-3.4.3 - Pass 1
------------------------------------
解包
$mkdir $LFS/sources/gcc-pass1
$tar -xvjf $LFS/sources/gcc-3.4.3.tar.bz2 -C $LFS/sources/gcc-pass1
解包后的文件所在目录:$LFS/sources/gcc-pass1/gcc-3.4.3
但是我们要用一个另外的目录来编译它,而不是在源码目录中:
$mkdir $LFS/sources/gcc-pass1/gcc-build
$cd $LFS/sources/gcc-pass1/gcc-build
配置编译脚本
$ $LFS/sources/gcc-pass1/gcc-3.4.3/configure --prefix=/tools --libexecdir=/tools/lib --with-local-prefix=/tools --disable-nls --enable-shared --enable-languages=c
编译
$make bootstrap
安装
$make install
创建/tools/bin/cc的符号链接(软链接),因为许多程序和脚本试图运行cc而不是gcc
$ln -s gcc /tools/bin/cc
清理垃圾
$rm -fr $LFS/sources/gcc-pass1/
------------------------------------
Linux-Libc-Headers-2.6.11.2
------------------------------------
解包
$tar -xvjf $LFS/sources/linux-libc-headers-2.6.11.2.tar.bz2 -C $LFS/sources/
安装步骤1(i386)
$cp -R $LFS/sources/linux-libc-headers-2.6.11.2/include/asm-i386 /tools/include/asm
如果是x86_64,则需要将上述指令修改为:
$cp -R $LFS/sources/linux-libc-headers-2.6.11.2/include/asm-x86_64 /tools/include/asm
安装步骤2
$cp -R $LFS/sources/linux-libc-headers-2.6.11.2/include/linux /tools/include
清理垃圾
$rm -fr $LFS/sources/linux-libc-headers-2.6.11.2/
------------------------------------
Glibc-2.3.4
------------------------------------
解包
$mkdir $LFS/sources/glibc
$tar -xvjf $LFS/sources/glibc-2.3.4.tar.bz2 -C $LFS/sources/glibc
切换目录,打补丁
$cd $LFS/sources/glibc/glibc-2.3.4/
$patch -Np1 -i $LFS/sources/glibc-2.3.4-fix_test-1.patch
我们要用一个另外的目录来编译它,而不是在源码目录中:
$mkdir $LFS/sources/glibc/glibc-build
$cd $LFS/sources/glibc/glibc-build
配置编译脚本
$$LFS/sources/glibc/glibc-2.3.4/configure --prefix=/tools --disable-profile --enable-add-ons --enable-kernel=2.6.0 --with-binutils=/tools/bin --without-gd --with-headers=/tools/include --without-selinux
编译
$make
运行测试套件(出错不要紧)
$make check
安装,前两个命令用于修正缺少/tools/etc/ld.so.conf文件的警告
$mkdir /tools/etc
$touch /tools/etc/ld.so.conf
$make install
安装国际化locale
$make localedata/install-locales
垃圾清理(要加f强制删除某些文件)
$cd ~
$rm -fr $LFS/sources/glibc
------------------------------------
调整/测试工具连
------------------------------------
现在临时的C库已经安装好了,我们需要让本章随后编译的那些工具都连接到这个库上。
为了实现这一目标,我们需要调整连接器脚本和编译器的specs文件。
首先安装调整过的连接器,转到"binutils-build"目录下并运安装调整过的连接器
$cd $LFS/sources/binutils-pass1/binutils-build
$make -C ld install
连接器是在第一遍安装Binutils的最后调整的。
注意!从现在开始,所有的工具都*只*连接到/tools/lib里的库文件上。
清理垃圾
$cd ~
$rm -fr $LFS/sources/binutils-pass1/
修正GCC specs文件,使它指向新的动态连接器
首先找到specs文件的位置:
$echo `gcc --print-file specs`
我这里显示的是“/mnt/lfs/tools/bin/../lib/gcc/i686-pc-linux-gnu/3.4.3/specs”
然后手动编辑specs文件,将其中的“/lib/ld-linux.so.2””���换成“/tools/lib/ld-linux.so.2”即可
$nano -w /tools/lib/gcc/i686-pc-linux-gnu/3.4.3/specs
...
若不想手动修改specs文件可在切换到主目录后依次运行下列命令:
$cd ~
$SPECFILE=`gcc --print-file specs`
$sed 's@ /lib/ld-linux.so.2@ /tools/lib/ld-linux.so.2@g' $SPECFILE > tempspecfile
$mv -f tempspecfile $SPECFILE
$unset SPECFILE
[注意]如果你机器上的动态连接器的名字不是ld-linux.so.2,你必须把上面的ld-linux.so.2换成你机器上的动态连接器的名字。
执行下面的命令,以避免头文件混淆
$rm -f /tools/lib/gcc/*/*/include/{pthread.h,bits/sigthread.h}
现在来检查一下新工具链的基本功能(编译和连接)是否正常:
$cd ~
$echo 'main(){}' > dummy.c
$cc dummy.c
$readelf -l a.out | grep ': /tools'
如果一切正常,应该不会出错,而且最后一个命令的结果是:
[Requesting program interpreter: /tools/lib/ld-linux.so.2]
尤其要注意tools/lib应该是我们的动态连接器的前缀。
如果你没看到上面的结果,那么就有大问题了。在改正之前,不要继续,因为没什么意义。
大多数情况下,出错都是因为上面的specs文件没改对。
在确定一切正常后,删除测试文件:
$rm dummy.c a.out
----------------------------
Tcl-8.4.9
----------------------------
这个软件包和接下来安装的两个软件包(Expect和DejaGNU)是为了给运行GCC和Binutils的测试程序提供支持。
仅为了测试而安装三个软件包,看起来似乎有点多余,但是看到那些最重要的工具正常工作,这样比较可靠。
即使没有运行本章中测试程序(不是必需的),运行Chapter 6中的测试程序也需要这些软件包。
解包
$tar -xvjf $LFS/sources/tcl-8.4.9-src.tar.bz2 -C $LFS/sources/
配置
$cd $LFS/sources/tcl8.4.9/unix
$./configure --prefix=/tools
编译并安装
$make && make install
设置一个环境变量来明确指示包含tcl头文件的目录,下一个包(Expect)要使用它
$export TCLPATH=$LFS/sources/tcl8.4.9
为tclsh创建一个必须的符号链接:
$ln -s tclsh8.4 /tools/bin/tclsh
[注意]暂时不要删除tcl8.4.9的源码目录,下一个软件包需要里面的头文件。
------------------------------
Expect-5.43.0
------------------------------
解包
$tar -xvjf $LFS/sources/expect-5.43.0.tar.bz2 -C $LFS/sources/
切换目录,打补丁
$cd $LFS/sources/expect-5.43
$patch -Np1 -i $LFS/sources/expect-5.43.0-spawn-1.patch
配置
$./configure --prefix=/tools --with-tcl=/tools/lib --with-tclinclude=$TCLPATH --with-x=no
编译并安装
$make && make SCRIPTS="" install
撤销TCLPATH环境变量
$unset TCLPATH
清理垃圾
$cd ~
$rm -fr $LFS/sources/expect-5.43
$rm -fr $LFS/sources/tcl8.4.9
------------------------------
DejaGNU-1.4.4
------------------------------
解包
$tar -xvjf $LFS/sources/dejagnu-1.4.4.tar.bz2 -C $LFS/sources/
配置
$cd $LFS/sources/dejagnu-1.4.4
$./configure --prefix=/tools
编译并安装
$make install
清理垃圾
$cd ~
$rm -fr $LFS/sources/dejagnu-1.4.4
------------------------------
GCC-3.4.3 - Pass 2
------------------------------
运行GCC和Binutils的测试套件,先测试主系统中PTY是否设置正常:
$expect -c "spawn ls"
正确的回答应当是“spawn ls”
如果如果你得到“The system has no more ptys. Ask your system administrator to create more.”
说明主系统的PTY没设置好。这种情况下,运行GCC和Binutils的测试套件就没什么意义了。
解包
$mkdir $LFS/sources/gcc-pass2
$tar -xvjf $LFS/sources/gcc-3.4.3.tar.bz2 -C $LFS/sources/gcc-pass2
切换目录,打补丁[这两个补丁非常重要]
$cd $LFS/sources/gcc-pass2/gcc-3.4.3/
$patch -Np1 -i $LFS/sources/gcc-3.4.3-no_fixincludes-1.patch
$patch -Np1 -i $LFS/sources/gcc-3.4.3-specs-2.patch
我们要用一个另外的目录来编译它,而不是在源码目录中:
$mkdir $LFS/sources/gcc-pass2/gcc-build
$cd $LFS/sources/gcc-pass2/gcc-build
编译前配置
$$LFS/sources/gcc-pass2/gcc-3.4.3/configure --prefix=/tools --libexecdir=/tools/lib --with-local-prefix=/tools --enable-clocale=gnu --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-languages=c,c++ --disable-libstdcxx-pch
编译
$make
测试[-k参数是让测试套件即使遇到错误也继续运行,直到完成]
$make -k check
查看测试结果[GCC的测试套件非常详细,基本上是肯定会出错的]
$$LFS/sources/gcc-pass2/gcc-3.4.3/contrib/test_summary | grep -A7 Summ | less
如果与http://www.linuxfromscratch.org/lfs/...ter5/gcc-3.4.3差别不大就没问题
但是Unexpected failures(未料到的失败)还是尽可能越少越好
安装
$make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/gcc-pass2
强烈建议的额外步骤:再执行一次合理性检查
$cd ~
$echo 'main(){}' > dummy.c
$cc dummy.c
$readelf -l a.out | grep ': /tools'
如果一切正常,应该不会出错,而且最后一个命令的结果是:
[Requesting program interpreter: /tools/lib/ld-linux.so.2]
尤其要注意tools/lib应该是我们的动态连接器的前缀。
如果你没看到上面的结果,那么就有大问题了。在改正之前,不要继续,因为没什么意义。
大多数情况下,很可能是忘了运用上面的Specs补丁。
在确定一切正常后,删除测试文件:
$rm dummy.c a.out
---------------------------------------
Binutils-2.15.94.0.2.2 - Pass 2
---------------------------------------
解包
$mkdir $LFS/sources/binutils-pass2
$tar -xvjf $LFS/sources/binutils-2.15.94.0.2.2.tar.bz2 -C $LFS/sources/binutils-pass2
解包后的文件所在目录:$LFS/sources/binutils-pass2/binutils-2.15.94.0.2.2
但是我们要用一个另外的目录来编译它,而不是在源码目录中:
$mkdir $LFS/sources/binutils-pass2/binutils-build
$cd $LFS/sources/binutils-pass2/binutils-build
编译前配置
$$LFS/sources/binutils-pass2/binutils-2.15.94.0.2.2/configure --prefix=/tools --disable-nls --enable-shared --with-lib-path=/tools/lib
编译和安装
$make && make install
为下一章的“再调整”阶段配置连接器
$make -C ld clean
$make -C ld LIB_PATH=/usr/lib:/lib
请不要删除Binutils的源码和编译目录,保持这些目录的现状,下一章还需要用到。
---------------------------------------
Gawk-3.1.4
---------------------------------------
解包
$tar -xvjf $LFS/sources/gawk-3.1.4.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/gawk-3.1.4
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/gawk-3.1.4
------------------------------
Coreutils-5.2.1
------------------------------
解包
$tar -xvjf $LFS/sources/coreutils-5.2.1.tar.bz2 -C $LFS/sources/
切换目录,配置[如果您不希望Coreutils向后兼容传统语法,可以省略设置DEFAULT_POSIX2_VERSION环境变量]
$cd $LFS/sources/coreutils-5.2.1
$DEFAULT_POSIX2_VERSION=199209 ./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理[需要强制删除一些文件]
$cd ~
$rm -fr $LFS/sources/coreutils-5.2.1
-----------------------------
Bzip2-1.0.3
-----------------------------
解包
$tar -xvjf $LFS/sources/bzip2-1.0.3.tar.bz2 -C $LFS/sources/
切换目录
$cd $LFS/sources/bzip2-1.0.3
Bzip2没有configure脚本,用下面的命令直接编译和安装:
$make && make PREFIX=/tools install
垃圾清理
$cd ~
$rm -fr $LFS/sources/bzip2-1.0.3
--------------------------------
Gzip-1.3.5
--------------------------------
解包
$tar -xvjf $LFS/sources/gzip-1.3.5.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/gzip-1.3.5
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/gzip-1.3.5
--------------------------------
Diffutils-2.8.1
--------------------------------
解包
$tar -xvjf $LFS/sources/diffutils-2.8.1.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/diffutils-2.8.1
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/diffutils-2.8.1
--------------------------------
Findutils-4.2.23
--------------------------------
解包
$tar -xvjf $LFS/sources/findutils-4.2.23.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/findutils-4.2.23
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/findutils-4.2.23
--------------------------------
Make-3.80
--------------------------------
解包
$tar -xvjf $LFS/sources/make-3.80.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/make-3.80
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/make-3.80
--------------------------------
Grep-2.5.1a
--------------------------------
解包
$tar -xvjf $LFS/sources/grep-2.5.1a.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/grep-2.5.1a
$./configure --prefix=/tools --disable-perl-regexp
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/grep-2.5.1a
--------------------------------
Sed-4.1.4
--------------------------------
解包
$tar -xvjf $LFS/sources/sed-4.1.4.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/sed-4.1.4
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/sed-4.1.4
--------------------------------
Gettext-0.14.3
--------------------------------
解包
$tar -xvjf $LFS/sources/gettext-0.14.3.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/gettext-0.14.3
$./configure --prefix=/tools --disable-libasprintf --without-csharp
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/gettext-0.14.3
--------------------------------
Ncurses-5.4
--------------------------------
解包
$tar -xvjf $LFS/sources/ncurses-5.4.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/ncurses-5.4
$./configure --prefix=/tools --with-shared --without-debug --without-ada --enable-overwrite
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/ncurses-5.4
--------------------------------
Patch-2.5.4
--------------------------------
解包
$tar -xvjf $LFS/sources/patch-2.5.4.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/patch-2.5.4
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/patch-2.5.4
--------------------------------
Tar-1.15.1
--------------------------------
解包
$tar -xvjf $LFS/sources/tar-1.15.1.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/tar-1.15.1
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/tar-1.15.1
--------------------------------
Texinfo-4.8
--------------------------------
解包
$tar -xvjf $LFS/sources/texinfo-4.8.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/texinfo-4.8
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/texinfo-4.8
--------------------------------
Bash-3.0
--------------------------------
解包
$tar -xvjf $LFS/sources/bash-3.0.tar.bz2 -C $LFS/sources/
切换目录,打补丁
$cd $LFS/sources/bash-3.0
$patch -Np1 -i $LFS/sources/bash-3.0-avoid_WCONTINUED-1.patch
编译前配置
$./configure --prefix=/tools --without-bash-malloc
编译并安装
$make && make install
为那些用sh作为shell的程序创建符号链接:
$ln -s bash /tools/bin/sh
垃圾清理
$cd ~
$rm -fr $LFS/sources/bash-3.0
--------------------------------
M4-1.4.3
--------------------------------
解包
$tar -xvjf $LFS/sources/m4-1.4.3.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/m4-1.4.3
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/m4-1.4.3
--------------------------------
Bison-2.0
--------------------------------
解包
$tar -xvjf $LFS/sources/bison-2.0.tar.bz2 -C $LFS/sources/
切换目录,配置
$cd $LFS/sources/bison-2.0
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/bison-2.0
--------------------------------
Flex-2.5.31
--------------------------------
解包
$tar -xvjf $LFS/sources/flex-2.5.31.tar.bz2 -C $LFS/sources/
切换目录,打补丁
$cd $LFS/sources/flex-2.5.31
$patch -Np1 -i $LFS/sources/flex-2.5.31-debian_fixes-3.patch
$touch $LFS/sources/flex-2.5.31/doc/flex.1
编译前配置
$./configure --prefix=/tools
编译并安装
$make && make install
垃圾清理
$cd ~
$rm -fr $LFS/sources/flex-2.5.31
--------------------------------
Util-linux-2.12q
--------------------------------
解包
$tar -xvjf $LFS/sources/util-linux-2.12q.tar.bz2 -C $LFS/sources/
切换目录
$cd $LFS/sources/util-linux-2.12q
默认的Util-linux并不使用刚才安装在/tools目录下的头文件和库文件,我们更改配置脚本来修正这个问题:
$sed -i 's@/usr/include@/tools/include@g' configure
配置
$./configure
编译一些支持例程:
$make -C lib
我们只需要这个软件包中的某些工具,因此只需要编译这几个工具就可以了:
$make -C mount mount umount
$make -C text-utils more
把这些程序复制到临时工具目录:
$cp mount/{,u}mount text-utils/more /tools/bin
垃圾清理
$cd ~ && rm -fR $LFS/sources/util-linux-2.12q
--------------------------------
Perl-5.8.6
--------------------------------
解包
$tar -xvjf $LFS/sources/perl-5.8.6.tar.bz2 -C $LFS/sources/
切换目录,打补丁
$cd $LFS/sources/perl-5.8.6
$patch -Np1 -i $LFS/sources/perl-5.8.6-libc-1.patch
编译前配置['IO Fcntl POSIX'全是字母]
$./configure.gnu --prefix=/tools -Dstatic_ext='IO Fcntl POSIX'
仅编译必须的工具:
$make perl utilities
复制这些工具及其库文件:
$cp perl pod/pod2man /tools/bin
$mkdir -p /tools/lib/perl5/5.8.6
$cp -R lib/* /tools/lib/perl5/5.8.6
垃圾清理
$cd ~ && rm -fR $LFS/sources/perl-5.8.6
------------------------------
可选步骤:系统清理
------------------------------
了解哪些东西是不必要的、可以删除的也是有好处的。
到目前为止已经安装的可执行程序和库文件包含大约130MB不必要的调试符号,运行下面的命令删除这些符号:
$strip --strip-debug /tools/lib/*
$strip --strip-unneeded /tools/{,s}bin/*
删除文档还可以再节省30MB空间:
$rm -fr /tools/{info,man}
如果你想休息一下,没问题,因为所有的临时工具都已经安装完毕。
你可以安全的关闭电脑,下次用光盘重启后可以直接从第六章开始你的冒险之旅。
但是之前忘记先挂载硬盘上必要的分区(我忘记了两次)。