第七章 临时系统的创建(上)

1.文本交互函数库  ncurses-5.6

  • 安装原因:命令交互环境 bash 需要 ncurses 提供的功能,因此在编译 bash 前需要先将 ncurses 编译好

tar xvf /lfs-sources/ncurses-5.6.tar.gz
cd ncurses-5.6
./configure --prefix=/tools --with-shared --without-debug --without-ada --enable-overwrite
make
make install
cd ..
rm -rf ncurses-5.6
  • --without-ada     该参数告诉 ncurses 即使主系统存在 ada 语言编译器的情况下也不要编译 ada 语言的支持函数库,因为脱离主系统后临时系统中没有 ada 语言的编译器
  • --enable-overwrite     该参数使 ncurses 的头文件安装到 ${prefix}/include 中,也就是 /tools/include ,而不是 /tools/include/ncurses ,以保证其他程序可以顺利找到其头文件

2.用户交互环境   bash-3.2

  • 安装原因:后续的编译工作都是使用控制台来进行的,这里准备一个可以和用户进行命令交互的平台

tar xvf /lfs-sources/bash-3.2.tar.gz
cd bash-3.2
patch -Np1 -i /lfs-sources/bash-3.2-fixes-5.patch
./configure --prefix=/tools --without-bash-malloc
make
make install
ln -vs bash /tools/bin/sh
cd ..
rm -rf bash-3.2

  • --without-bash-malloc    bash 自带的 malloc 函数会导致段错误,该参数设置 bash 使用 glibc 中更为稳定的 malloc 函数
  • ln -vs bash /tools/bin/sh    设置 bash 为默认的 shell ,许多程序在调用 shell 的时候都是用 sh 命令,所以建立该链接文件

3.压缩工具  bzip2-1.0.4

  • 安装 bzip2 软件包后能正确的解开 bzip2 格式压缩的源代码包

tar xvf /lfs-sources/bzip2-1.0.4.tar.gz
cd bzip2-1.0.4
make
make PREFIX=/tools install
cd ..
rm -rf bzip2-1.0.4

  •    bzip2 软件包安装中没有配置过程,默认会安装到 /usr/local 中,使用 PREFIX 指定安装到目录 /tools

4.常用命令工具集  coreutils-6.9

  • 制作系统过程中肯定会用到各种常用命令,比如复制和移动文件, coreutils 软件包中包含了这些命令,将其安装到临时系统中

tar xvf /lfs-sources/coreutils-6.9.tar.bz2
cd coreutils-6.9
./configure --prefix=/tools
make
make install
cp -v src/su /tools/bin/su-tools
cd ..
rm -rf coreutils-6.9

  • cp -v src/su /tools/bin/su-tools    安装 su 命令,su 命令不能被一个非特权用户安装并将其属性设置为 root 所有,需要手动安装它,以便能作为非特权用户在制作目标系统时测试软件包

5.文件比较工具   diffutils-2.8.1

  • 某些软件包的测试脚本里会使用 diff 命令,该命令包含在 diffutils 软件包中,将其安装到临时系统中

tar xvf /lfs-sources/diffutils-2.8.1.tar.gz
cd diffutils-2.8.1
./configure --prefix=/tools
make
make install
cd ..
rm -rf diffutils-2.8.1


6.文件查找工具   findutils-4.2.31

  • findutils 软件包中的 find 命令属于 linux 常用命令,在某些软件包的安装测试时也用到,将其安装到临时系统中

tar xvf /lfs-sources/findutils-4.2.31.tar.gz
cd findutils-4.2.31
./configure --prefix=/tools
make
make install
cd ..
rm -rf findutils-4.2.31

7.文本处理工具   gawk-3.1.5

  • gawk 软件包中包含了 awk 命令,该命令是 unix 及 linux 下都最为常用的文本处理命令之一,我们需要安装该软件包来辅助完成目标系统的制作

tar xvf /lfs-sources/gawk-3.1.5.tar.bz2
cd gawk-3.1.5
./configure --prefix=/tools
cat >> config.h << "EOF"
#define HAVE_LANGINFO_CODESET 1
#define HAVE_LC_MESSAGES 1
EOF
make
make install
cd ..
rm -rf gawk-3.1.5



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值