在构建软件包时,本书提供的命令基于下列假设:
某些软件包在编译前需要打补丁,然而补丁只在绕过特定问题时才需要。 多数补丁在本章和下一章都要应用,然而个别时候只在其中一章使用。 因此,如果发现本书给出的指示中没有使用某个下载好的补丁, 这是正常的,不必担心。 在应用补丁时可能会出现关于 offset 或者 fuzz 的警告信息,不用担心这些警告, 补丁还是会成功应用到源码上的。
在编译大多数软件包时,屏幕上都会出现一些警告。这是正常的, 可以放心地忽略。这些警告就像它们描述的那样,表明一些过时的, 但并不是错误的 C 或 C++ 语法。C 标准经常改变, 一些软件包仍然在使用旧的标准。这并不是一个严重的问题, 但确实会触发警告。
最后确认 LFS
环境变量是否配置正确:
echo $LFS
确认上述命令输出 LFS 分区挂载点的路径,如果使用了本书的例子, 就是 /mnt/lfs
。
最后强调两个重要事项:
本书中的命令假设 第 2.2 节 “宿主系统需求” 中的所有内容, 包括符号链接,都被正确设置:
bash 是正在使用的 shell。
sh 是指向 bash的符号链接。
/usr/bin/awk 是指向 gawk 的符号链接。
/usr/bin/yacc 是指向 bison 的符号链接,或者一个执行 bison 的小脚本。