From ea9263cbf0b256fbf06062d501e1e7db5b1d3b07 Mon Sep 17 00:00:00 2001 From: Xi Ruoyao Date: Thu, 29 Sep 2022 19:36:44 +0800 Subject: 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. --- part3intro/toolchaintechnotes.xml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'part3intro') diff --git a/part3intro/toolchaintechnotes.xml b/part3intro/toolchaintechnotes.xml index 86ec87928..edfc13d26 100644 --- a/part3intro/toolchaintechnotes.xml +++ b/part3intro/toolchaintechnotes.xml @@ -320,8 +320,9 @@ checking what linker to use... /mnt/lfs/tools/i686-lfs-linux-gnu/bin/ld As mentioned above, the standard C++ library is compiled next, followed in - by all the remaining programs that need - to be cross compiled. The install step of all those packages uses the + 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 DESTDIR variable to force installation in the LFS filesystem. -- cgit v1.2.3-54-g00ecf