toolchaintechnotes: add the rationale for cross compiling ch6 packages

"need to be cross compiled" alone does not make too much sense: we
compile these packages in chapter 8 anyway.  The real reason forcing a
cross compilation is circular dependency: if building A needs B but
building B needs A, we'll have to cross compile at least one of A and B
or we won't be able to build either in the chroot.
This commit is contained in:
Xi Ruoyao 2022-09-29 19:36:44 +08:00
parent a243b36b8b
commit ea9263cbf0
No known key found for this signature in database
GPG Key ID: ACAAD20E19E710E3

View File

@ -320,8 +320,9 @@ checking what linker to use... /mnt/lfs/tools/i686-lfs-linux-gnu/bin/ld</compute
and generally does not rely on toolchain defaults.</para>
<para>As mentioned above, the standard C++ library is compiled next, followed in
<xref linkend="chapter-temporary-tools"/> by all the remaining programs that need
to be cross compiled. The install step of all those packages uses the
<xref linkend="chapter-temporary-tools"/> by other programs that need
to be cross compiled for breaking circular dependencies at build time.
The install step of all those packages uses the
<envar>DESTDIR</envar> variable to force installation
in the LFS filesystem.</para>