mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-03-06 06:14:47 +00:00
Simplified the glibc-lockin for chapter 5, and added some verbiage on fixincludes
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2708 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
09c1e758b6
commit
be2dd91303
@ -82,6 +82,11 @@
|
||||
</itemizedlist>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>August 31, 2003 [jeremy] - Added in Greg's new
|
||||
instructions for GCC 3.3.1 wrt the fixincludes process. Also added
|
||||
extra verbiage to the lockin and GCC pass 2 pages on the fixincludes
|
||||
process.</para></listitem>
|
||||
|
||||
<listitem><para>August 31, 2003 [jeremy] - Added user nobody to
|
||||
passwd and group files, so coreutils tests will pass.</para></listitem>
|
||||
|
||||
|
@ -12,6 +12,17 @@ subdir.</para>
|
||||
<para><screen><userinput>patch -Np1 -i ../gcc-&gcc-version;-no_fixincludes-2.patch
|
||||
patch -Np1 -i ../gcc-&gcc-specs-version;.patch</userinput></screen></para>
|
||||
|
||||
<para>The first patch disables the GCC "fixincludes" script. We mentioned this
|
||||
briefly earlier, but a slightly more in-depth explanation of the fixincludes
|
||||
process is warranted here. Under normal circumstances, the GCC fixincludes
|
||||
script scans your system for header files that need to be fixed. It might find
|
||||
that the Glibc header files on your host system need to be fixed, fix them and
|
||||
put them in the GCC private include directory. Then, later on in Chapter 6,
|
||||
after we've installed the newer Glibc, this private include directory would be
|
||||
searched before the system include directory, resulting in GCC finding the
|
||||
fixed headers from the host system, which would most likely not match the Glibc
|
||||
version actually used for the LFS system.</para>
|
||||
|
||||
<para>The last patch changes GCC's default location of the dynamic linker,
|
||||
a simple substitution of "/lib/ld-linux.so.2" with "/stage1/lib/ld-linux.so.2"
|
||||
in <filename>config/i386/linux.h</filename>. Patching now rather than adjusting
|
||||
|
@ -35,17 +35,13 @@ unset SPECFILE</userinput></screen></para>
|
||||
it all in. Or you can edit the specs file by hand if you want to: just replace
|
||||
"/lib/ld-linux.so.2" with "/stage1/lib/ld-linux.so.2".</para>
|
||||
|
||||
<para>Also, because we allowed GCC's "Fixincludes" script to modify our host's
|
||||
header files (and this was necessary because of improper use of the __thread
|
||||
keyword in some older software), we want to get rid of those modified header
|
||||
files, and replace them with pristine ones.</para>
|
||||
<para>Lastly, there is a possibility that some include files from the host
|
||||
system have found their way into gcc's private include dir. This can happen
|
||||
because of GCC's "fixincludes" process which part of the GCC build. We'll
|
||||
explain more about this further on in this chapter. For now, run the
|
||||
following commands to eliminate this possibility.</para>
|
||||
|
||||
<para><screen><userinput>GCCDIR=/stage1/lib/gcc-lib/*/*
|
||||
rm -rf $GCCDIR/include/*
|
||||
cp $GCCDIR/install-tools/include/* $GCCDIR/include
|
||||
cp $GCCDIR/install-tools/gsyslimits.h \
|
||||
$GCCDIR/include/syslimits.h
|
||||
unset GCCDIR</userinput></screen></para>
|
||||
<para><screen><userinput>rm -f /stage1/lib/gcc-lib/*/*/include/{pthread.h,bits/sigthread.h}</userinput></screen></para>
|
||||
|
||||
<para>This completes the installation of the self-contained toolchain, which
|
||||
can now be used to build the rest of the temporary tools.</para>
|
||||
|
Loading…
Reference in New Issue
Block a user