aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chapter06/chapter06.xml1
-rw-r--r--chapter06/introduction.xml33
-rw-r--r--chapter07/chapter07.xml1
-rw-r--r--chapter07/introduction.xml40
4 files changed, 43 insertions, 32 deletions
diff --git a/chapter06/chapter06.xml b/chapter06/chapter06.xml
index a9f86d4dd..d08a4d780 100644
--- a/chapter06/chapter06.xml
+++ b/chapter06/chapter06.xml
@@ -11,6 +11,7 @@
<title>Cross Compiling Temporary Tools</title>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="introduction.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="m4.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ncurses.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bash.xml"/>
diff --git a/chapter06/introduction.xml b/chapter06/introduction.xml
index 5614270b2..cfc8befc5 100644
--- a/chapter06/introduction.xml
+++ b/chapter06/introduction.xml
@@ -5,25 +5,26 @@
%general-entities;
]>
-<sect1 id="ch-tools-introduction">
+<sect1 id="ch-tools-introduction-cross">
<?dbhtml filename="introduction.html"?>
<title>Introduction</title>
- <para>This chapter shows how to build a minimal Linux system.
- This system will contain just enough tools to start constructing the final
- LFS system in <xref linkend="chapter-building-system"/> and allow a working
- environment with more user convenience than a minimum environment would.</para>
+ <para>This chapter shows how to cross-compile basic utilities using
+ the just built cross-toolchain. Those utilities are installed into
+ their final location, but cannot be used yet. Basic tasks still rely on
+ the hosts tools. Nevertheless, the installed libraries are used when
+ linking.</para>
+
+ <para>Using the utilities will be possible in next chapter after entering
+ the <quote>chroot</quote> environment. But all the packages built in the
+ present chapter need themselves to be built. So we cannot be independent
+ on the build system yet.</para>
+
+ <para>Once again, let us recall that improper setting of <envar>LFS</envar>
+ together with building as root, may render your computer unusable.
+ This whole chapter must be done as user <systemitem
+ class="username">lfs</systemitem>, with the enviroment as described in
+ <xref linkend="ch-preps-settingenviron"/>.</para>
- <para>There are two steps in building this minimal system. The first step
- is to build a new and host-independent toolchain (compiler, assembler,
- linker, libraries, and a few useful utilities). The second step uses this
- toolchain to build the other essential tools.</para>
-<!--
- <para>The files compiled in this chapter will be installed under the
- <filename class="directory">$LFS</filename> directory to keep them
- separate from the files installed in the next chapter and the host
- production directories. Since the packages compiled here are temporary,
- we do not want them to pollute the soon-to-be LFS system.</para>
--->
</sect1>
diff --git a/chapter07/chapter07.xml b/chapter07/chapter07.xml
index ae5c9b7b3..51d2b6f9c 100644
--- a/chapter07/chapter07.xml
+++ b/chapter07/chapter07.xml
@@ -11,6 +11,7 @@
<title>Entering Chroot and Building Additional Tools</title>
+ <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="introduction.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="changingowner.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="kernfs.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="chroot.xml"/>
diff --git a/chapter07/introduction.xml b/chapter07/introduction.xml
index 5614270b2..0445878d5 100644
--- a/chapter07/introduction.xml
+++ b/chapter07/introduction.xml
@@ -5,25 +5,33 @@
%general-entities;
]>
-<sect1 id="ch-tools-introduction">
+<sect1 id="ch-tools-introduction-chroot">
<?dbhtml filename="introduction.html"?>
<title>Introduction</title>
- <para>This chapter shows how to build a minimal Linux system.
- This system will contain just enough tools to start constructing the final
- LFS system in <xref linkend="chapter-building-system"/> and allow a working
- environment with more user convenience than a minimum environment would.</para>
+ <para>This chapter shows how to build the last missing bits of the
+ temporary system: first, the tools needed by the build machinery of
+ various packages, then three packages needed to run tests.
+ Now that all circular dependencies have been resolved,
+ we can use a <quote>chroot</quote> environment, completely isolated
+ from the computer used for the build, except for the running kernel.</para>
+
+ <para>For proper operation of the isolated environment, some communication
+ with the running kernel must be established. This is done through the
+ so-called <emphasis>Virtual Kernel File Systems</emphasis>, which must be
+ mounted when entering the chroot environment. You may want to check
+ that they are mounted by issuing <command>ls $LFS/dev</command>,
+ <command>ls $LFS/proc</command>, or <command>ls $LFS/sys</command>.
+ Note that mounting the virtual kernel file systems must be done
+ <emphasis>each time you want to enter the chroot
+ environment</emphasis>.</para>
+
+ <para>Until <xref linkend="ch-tools-chroot"/>, the commands must be
+ run as <systemitem class="username">root</systemitem>, with the
+ <envar>LFS</envar> variable set. After entering chroot, all commands
+ are run as root, fortunately without access to the OS of the computer
+ you build LFS on. Be careful anyway, as it is easy to destroy the whole
+ LFS system with badly formed commands.</para>
- <para>There are two steps in building this minimal system. The first step
- is to build a new and host-independent toolchain (compiler, assembler,
- linker, libraries, and a few useful utilities). The second step uses this
- toolchain to build the other essential tools.</para>
-<!--
- <para>The files compiled in this chapter will be installed under the
- <filename class="directory">$LFS</filename> directory to keep them
- separate from the files installed in the next chapter and the host
- production directories. Since the packages compiled here are temporary,
- we do not want them to pollute the soon-to-be LFS system.</para>
--->
</sect1>