写在前面
本章将给LFS安装非常多的软件(有七十多个包),需要一定的耐心
注:部分软件安装后,有测试环节,请勿忽略测试
请严格依照LFS-BOOK进行操作
下方将对本章中一些特别的安装进行介绍
Man-pages-5.13安装
在完成解压和cd后,通常的安装需要建build文件夹,随后输入配置文件,运行make,最后make install
但Man-mages的安装不需要这么复杂
在完成解压和cd后,只需要运行一条指令就可以完成安装
make prefix=/usr install
Iana-Etc-20220812安装
这个包安装也很简单,连make都不需要,直接一个cp指令复制过去即可
cp services protocols /etc
Glibc-2.36安装
安装Glibc总共花费笔者1.5h
该包安装时间非常漫长,其编译需要的时间为24SBU(在笔者的设备上约为20分钟)
安装的过程中规中矩,但是问题在于一个特别的指令
该指令将会运行一个包含4200条测试的测试集合,在笔者的设备上(可在第一章中看到)需要运行约30分钟
测试完成后,将会进行报错信息的汇总,汇总信息如图
我们找出报错的内容,本机报错的内容如下所示
FAIL: elf/tst-cpu-features-cpuinfo FAIL: elf/tst-cpu-features-cpuinfo-static FAIL: io/tst-lchmod FAIL: nptl/tst-mutex10
我们查阅手册,对以上FAIL进行分析
io/tst-lchmod 错误,是一个已知的,会在chroot中出现的问题,可以忽略
在tst-cpu-features-cpuinfo(-static)的错误中,这两个cpuinfo的错误是由于VMware软件错误引起的,在VMware中执行可以忽略。感谢为Linux构建Glibc2.33会导致单元测试失败 - 我爱学习网 (5axxw.com)的答案
在nptl/tst-mutex10的错误中,该错误同样是由虚拟机所引起,在VMware中同样可以忽略。(感谢Re: [lfs-support] Test FAIL: nptl/tst-mutex10 on 8.8.1. Installation of Glibc (mail-archive.com))的回答
以上,笔者的Glibc没有问题,进行下一步操作
Glibc的安装阶段会抱怨缺少/etc/ld.so.conf。用以下方法防止此警告:
touch /etc/ld.so.conf
Glibc的其他安装流程详见手册
Tcl-8.6.12安装
这个软件的安装,需要解压两个文件,LFS-BOOK中并么有对这一问题进行更为详细的说明
首先,我们按正常流程,解压tcl8.6.12-src.tar.gz,然后cd进入tcl8.6.12
接着,我们运行以下命令解压另一个包,这一命令将会把另一个包中的内容一起解压进tcl8.6.12
tar -xf ../tcl8.6.12-html.tar.gz --strip-components=1
其余步骤与一般的包安装相同
Binutils安装
ld错误 FAIL: Run p_align-1b with PIE FAIL: Run p_align-1d with -Wl,-z,max-page-size=0x1000 with PIE gprofng错误 # of unresolved testcases 3 make[4]: *** [Makefile:932: check-DEJAGNU] Error 1 make[4]: Leaving directory '/sources/binutils-2.39/build/gprofng' make[3]: *** [Makefile:803: check-am] Error 2 make[3]: Leaving directory '/sources/binutils-2.39/build/gprofng' make[2]: *** [Makefile:471: check-recursive] Error 1 make[2]: Target 'check' not remade because of errors. make[2]: Leaving directory '/sources/binutils-2.39/build/gprofng' make[1]: *** [Makefile:7770: check-gprofng] Error 2
注意:make -k check 中,出现了两个报错
备注:该部分的问题暂未进行修复
GMP-6.2.1安装
配置文件前的两个note均被忽略
Shadow 4.12.2安装
第二个note中的命令忽略