12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
- "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
- <!ENTITY % general-entities SYSTEM "../general.ent">
- %general-entities;
- ]>
- <sect1 id="ch-tools-introduction">
- <?dbhtml filename="introduction.html"?>
- <title>Introduction</title>
- <para>This chapter shows how to compile and install 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>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/tools</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>
- <important>
- <para>Before issuing the build instructions for a package, the package
- should be unpacked as user <systemitem class="username">lfs</systemitem>,
- and a <command>cd</command> into the created directory should be performed.
- The build instructions assume that the <command>bash</command> shell is
- in use.</para>
- </important>
- <para>Several of the packages are patched before compilation, but only when
- the patch is needed to circumvent a problem. A patch is often needed in both
- this and the next chapter, but sometimes in only one or the other. Therefore,
- do not be concerned if instructions for a downloaded patch seem to be missing.
- Warning messages about <emphasis>offset</emphasis> or <emphasis>fuzz</emphasis>
- may also be encountered when applying a patch. Do not worry about these
- warnings, as the patch was still successfully applied.</para>
- <para>During the compilation of most packages, there will be several warnings
- that scroll by on the screen. These are normal and can safely be ignored.
- These warnings are as they appear—warnings about deprecated, but not
- invalid, use of the C or C++ syntax. C standards change fairly often, and
- some packages still use the older standard. This is not a problem, but does
- prompt the warning.</para>
- <important>
- <para>After installing each package, delete its source and build directories,
- unless specifically instructed otherwise. Deleting the sources prevents
- mis-configuration when the same package is reinstalled later.</para>
- </important>
- <para>Check one last time that the <envar>LFS</envar> environment
- variable is set up properly:</para>
- <screen role="nodump"><userinput>echo $LFS</userinput></screen>
- <para>Make sure the output shows the path to the LFS partition's mount
- point, which is <filename class="directory">/mnt/lfs</filename>, using
- our example.</para>
- </sect1>
|