《Linux From Scratch》第二部分:准备构建 第五章:构建临时文件系统- 5.3. 通用编译指南

简介:

编译软件包时本指南中有几个假定:

  • 有几个软件包在编译之前需要打补丁来规避一些问题。有的补丁会在本章和下一章中都需要,但有时候只有其中一章会需要,因此,如果某章看起来缺少某个补丁的下载说明时不用担心。安装补丁的时候也许会遇到关于 offset 或者 fuzz 的警告信息。别担心这些警告,补丁还是会成功安装的。

  • 在大部分软件包的编译过程中,屏幕上都可能出现几个警告。这都很正常,可以安全地忽略。这些警告正如它们描述的那样,是对使用过时的 C 或 C++ 语法的警告,而不是这些语法不可用。C 语言的标准经常改变,一些软件包仍然在使用旧的标准。这并不是一个问题,虽然确实会弹出警告。

  • 最后确认一次是否正确设置了 LFS 环境变量:

    echo $LFS

    确认输出显示的是 LFS 分区挂载点的路径,在我们的例子中也就是 /mnt/lfs

  • 最后,必须强调两个重要的点:

    [重要]

    重要

    编译指南假定你已经正确地设置了宿主系统需求和符号链接:

    • shell 使用的是 bash

    • sh 是到 bash 的符号链接。

    • /usr/bin/awk 是到 gawk 的符号链接。

    • /usr/bin/yacc 是到 bison 的符号链接或者一个执行 bison 的小脚本。

    [重要]

    重要

    再次强调构建过程:

    1. 把所有源文件和补丁放到 chroot 环境可访问的目录,例如 /mnt/lfs/sources/。但是千万不能把源文件放在 /mnt/lfs/tools/ 中。

    2. 进入到源文件目录。

    3. 对于每个软件包:

      1. tar 程序解压要编译的软件包。在第五章中,确保解压软件包时你使用的是 lfs 用户。

      2. 进入到解压后创建的目录中。

      3. 根据指南说明编译软件包。

      4. 回退到源文件目录。

      5. 除非特别说明,删除解压出来的目录和所有编译过程中生成的 <package>-build 目录。

相关文章
|
3天前
|
Linux 开发工具 C语言
Linux 安装 gcc 编译运行 C程序
Linux 安装 gcc 编译运行 C程序
21 0
|
6天前
|
Ubuntu 安全 Linux
《Linux 简易速速上手小册》第1章: Linux 系统基础(2024 最新版)
《Linux 简易速速上手小册》第1章: Linux 系统基础(2024 最新版)
38 1
|
13天前
|
资源调度 JavaScript 搜索推荐
Linux系统之部署envlinks极简个人导航页
【4月更文挑战第11天】Linux系统之部署envlinks极简个人导航页
53 2
|
14天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
38 6
|
1天前
|
Linux 数据安全/隐私保护
Linux系统忘记密码的三种解决办法
这篇博客介绍了三种在Linux忘记密码时重置登录密码的方法:1) 使用恢复模式,通过控制台界面以管理员权限更改密码;2) 利用Linux Live CD/USB启动,挂载硬盘分区并使用终端更改密码;3) 进入单用户模式,自动以管理员身份登录后重置密码。每个方法都提供了详细步骤,提醒用户在操作前备份重要数据。
|
1天前
|
JSON Unix Linux
Linux系统之jq工具的基本使用
Linux系统之jq工具的基本使用
24 1
|
1天前
|
数据采集 监控 安全
linux系统被×××后处理经历
linux系统被×××后处理经历
|
2天前
|
Ubuntu Linux
Linux(Ubuntu)系统临时IP以及静态IP配置(关闭、启动网卡等操作)
请注意,以上步骤是在临时基础上进行配置的。如果要永久保存静态IP地址,通常还需要修改 `/etc/network/interfaces`文件,以便在系统重启后保持配置。同时,确保备份相关配置文件以防止出现问题。
9 1
|
2天前
|
监控 安全 Linux
Linux系统之安装ServerBee服务器监控工具
【4月更文挑战第22天】Linux系统之安装ServerBee服务器监控工具
40 2
|
2天前
|
缓存 Linux
linux系统缓存机制
linux系统缓存机制