source: chapter05/gcc-exp.xml@ 4d51529

10.0 10.0-rc1 10.1 10.1-rc1 11.0 11.0-rc1 11.0-rc2 11.0-rc3 11.1 11.1-rc1 11.2 11.2-rc1 11.3 11.3-rc1 12.0 12.0-rc1 12.1 12.1-rc1 12.2 12.2-rc1 6.0 6.1 6.1.1 6.3 6.4 6.5 6.6 6.7 6.8 7.0 7.1 7.2 7.3 7.4 7.5 7.5-systemd 7.6 7.6-systemd 7.7 7.7-systemd 7.8 7.8-systemd 7.9 7.9-systemd 8.0 8.1 8.2 8.3 8.4 9.0 9.1 arm bdubbs/gcc13 ml-11.0 multilib renodr/libudev-from-systemd s6-init trunk v4_1 v5_0 v5_1 v5_1_1 xry111/arm64 xry111/arm64-12.0 xry111/clfs-ng xry111/lfs-next xry111/loongarch xry111/loongarch-12.0 xry111/loongarch-12.1 xry111/loongarch-12.2 xry111/mips64el xry111/multilib xry111/pip3 xry111/rust-wip-20221008 xry111/update-glibc
Last change on this file since 4d51529 was 8b8f29ab, checked in by Gerard Beekmans <gerard@…>, 22 years ago

Added missing </literallayout></para>

git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2244 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 1.8 KB
Line 
1<sect2>
2<title>Command explanations</title>
3
4<para><userinput>--prefix=/static:</userinput> This is NOT a typo. GCC hard
5codes some paths while compiling and so we need to pass /static as the
6prefix during ./configure. We pass the real install prefix during the
7make install command later.</para>
8
9<para><userinput>--with-as and --with-ld:</userinput> GCC can be
10miscompiled if your host distribution's Binutils package is quite old. We
11need a good working static GCC until we reinstall GCC later in chapter 6.
12So by using <filename>as</filename> and <filename>ld</filename> from the
13Binutils package we just compiled we ensure that GCC will work
14correctly.</para>
15
16<para><userinput>make BOOT_LDFLAGS="-static":</userinput>
17This is the equivalent to make LDFLAGS="-static" as we use with other
18packages to compile them statically.</para>
19
20<para><userinput>make install-no-fixedincludes:</userinput>
21This prevents the fixed header files from being installed. This is needed
22because under normal circumstances the GCC installation will run the
23fixincludes scripts which scans your system for header files that need to be
24fixed. Say it finds Glibc header files. It will fix them and will end up in
25$LFS/static/lib/gcc-lib/i686-pc-linux-gnu/ Later on in chapter 6 you
26will install Glibc which will install header files in /usr/include. Next
27you will install other programs which will use Glibc headers. GCC will look
28in /static/lib/gcc-lib before looking in /usr/include, which has the result
29of Glibc header files from your host distribution being found and used which
30are probably incompatible with the Glibc version actually in use on the LFS
31system.</para>
32
33<para><userinput>ln -s gcc $LFS/static/bin/cc:</userinput> This
34creates the $LFS/static/bin/gcc symlink, which some packages need.</para>
35
36</sect2>
Note: See TracBrowser for help on using the repository browser.