对 lfs 源安装感到困惑

对 lfs 源安装感到困惑

我开始使用 LFS 书来构建 homemode Linux。我来到了第二部分。 - 第5章“构建临时系统”。我将所有需要的源下载到/mnt/lfs/sources。当我想开始构建软件包并安装时,我感到困惑。

我在过去的基于发行版的系统上从源代码安装了一些软件包。当我们使用 make install 安装编译源时,它会安装到系统目录(或者我知道是这样)。因此,如果我为 lfs 源运行 make install,它会安装到主机系统目录而不是 lfs 系统目录吗?

答案1

仔细阅读LFS书中的所有内容!

创建 $LFS/tools 目录

第 5 章中编译的所有程序都将安装在下面,$LFS/tools 以使它们与第 6 章中编译的程序分开。 ...通过以 root 身份运行以下命令来创建所需的目录:

mkdir -v $LFS/tools

下一步是/tools在主机系统上创建符号链接。这将指向 LFS 分区上新创建的目录。也以 root 身份运行此命令:

ln -sv $LFS/tools /

介绍

本章编译的文件将安装在$LFS/tools目录下,以与下一章安装的文件和主机生产目录分开。由于这里编译的包是临时的,我们不希望它们污染即将推出的 LFS 系统。

binutils 的构建(第 1 部分)

现在准备 Binutils 进行编译:

../configure --prefix=/tools            \
             --with-sysroot=$LFS        \
             --with-lib-path=/tools/lib \
             --target=$LFS_TGT          \
             --disable-nls              \
             --disable-werror

配置选项的含义:

  --prefix=/tools

这告诉配置脚本准备在 /tools 目录中安装 Binutils 程序。

 --with-sysroot=$LFS

对于交叉编译,这告诉构建系统根据需要在 $LFS 中查找目标系统库。

所以如果你把每件事都做得很好(就像 LFS 书中那样),它应该会运作良好:)

相关内容