diff options
author | Xi Ruoyao <xry111@xry111.site> | 2022-08-19 12:41:48 +0800 |
---|---|---|
committer | Xi Ruoyao <xry111@xry111.site> | 2022-08-19 12:41:48 +0800 |
commit | 6099a4714944f72636abb2cc5b31aead091bd9c5 (patch) | |
tree | 3f1f43daf905d1d2978ce99257a50aa445a84364 /chapter06/binutils-pass2.xml | |
parent | d94f2d01a50466c98eaf92fc4e7c2ced50fdd91a (diff) |
Remove libtool archive (.la) files in Chapter 5 and 6
They are really harmful. In Binutils pass 2, libstdc++.la caused the
building system to use host /usr/lib/libstdc++.so for gprofng. We now
has disabled gprofng for pass 2, but the similar issue also exists in
GCC pass 2. In a normal LFS build, the building system silently uses
/usr/lib/libstdc++.so (I guess it does not blow up simply because some
blind luck); in a real cross build (x86 -> ARM for example) the build
will fail.
Remove the .la files to fix this issue. Instead of only modifying
clfs-ng, it makes more sense to apply the change for trunk: though
the build does not fail, using host library is still a contamination.
Diffstat (limited to 'chapter06/binutils-pass2.xml')
-rw-r--r-- | chapter06/binutils-pass2.xml | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/chapter06/binutils-pass2.xml b/chapter06/binutils-pass2.xml index 1cabf96d9..8766b71e9 100644 --- a/chapter06/binutils-pass2.xml +++ b/chapter06/binutils-pass2.xml @@ -98,6 +98,11 @@ cd build</userinput></screen> <screen><userinput remap="install">make DESTDIR=$LFS install</userinput></screen> + <para>Remove the libtool archive files because they are harmful for + cross compilation, and remove unnecessary static libraries:</para> + +<screen><userinput remap="install">rm -v $LFS/usr/lib/lib{bfd,ctf,ctf-nobfd,opcodes}.{a,la}</userinput></screen> + </sect2> <sect2 role="content"> |