aboutsummaryrefslogtreecommitdiffstats
path: root/chapter05/gcc-exp.xml
blob: 65c610adc2a41c3402dc18a5710f208d8da17bd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<sect2>
<title>Command explanations</title>

<para><userinput>patch -Np1 -i ../gcc-&gcc-version;.patch:</userinput>
This patch fixes a bug in gcc's linker concerning non-exported (weak) 
symbols, which was brought to the surface by the new glibc and also one
or two other problems which can arise.</para>

<para><userinput>--prefix=/usr:</userinput> This is NOT a typo.  GCC hard
codes some paths while compiling and so we need to pass /usr as the
prefix during ./configure.  We pass the real install prefix during the
make install command later.</para>

<para><userinput>--enable-languages=c,c++:</userinput> This only builds the C
and C++ compilers and not the other available compilers as they are, on
the average, not often used. If those other compilers are needed,
the --enable-languages parameter can be omitted.</para>

<para><userinput>ln -s ../usr/bin/cpp:</userinput> This
creates the $LFS/lib/cpp symlink. Some packages explicitly try to find
cpp in /lib.</para>

<para><userinput>ln -s ../bin/cpp:</userinput> This
creates the $LFS/usr/lib/cpp symlink as there are packages that expect
cpp to be in /usr/lib.</para>

</sect2>