Changeset 673b0d8 for chapter01/how.xml


Ignore:
Timestamp:
05/03/2004 10:59:46 AM (20 years ago)
Author:
Matthew Burgess <matthew@…>
Branches:
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, 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, 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/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
Children:
0c43171, 2ec64b3, a4a675f
Parents:
287ea55
Message:
  • Merged newxml into HEAD

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chapter01/how.xml

    r287ea55 r673b0d8  
     1<?xml version="1.0" encoding="ISO-8859-1"?>
     2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
     3  <!ENTITY % general-entities SYSTEM "../general.ent">
     4  %general-entities;
     5]>
    16<sect1 id="ch-scatter-how">
    27<title>How things are going to be done</title>
    3 <?dbhtml filename="how.html" dir="chapter01"?>
     8<?dbhtml filename="how.html"?>
    49
    510<para>You are going to build your LFS system by using a previously installed
     
    1015as one of the options when you installed your distribution.</para>
    1116
    12 <para>In <xref linkend="chapter-making-space"/> you will first create a new
     17<para>In <xref linkend="chapter-partitioning"/> you will first create a new Linux native
    1318partition and file system, the place where your new LFS system will be compiled
    14 and installed. Then in <xref linkend="chapter-getting-materials"/> you download
    15 all the packages and patches needed to build an LFS system, and store them on
    16 the new file system. In <xref linkend="chapter-preparation"/> you set up a good
     19and installed. Then in <xref linkend="chapter-getting-materials"/> you download all the
     20packages and patches needed to build an LFS system, and store them on the new
     21file system. In <xref linkend="chapter-final-preps"/> you set up a good
    1722environment to work in.</para>
    1823
    19 <para><xref linkend="chapter-temporary-tools"/> then discusses the installation
    20 of a number of packages that form the basic development suite used to build the
    21 actual system in <xref linkend="chapter-building-system"/>.</para>
     24<para><xref linkend="chapter-temporary-tools"/> then discusses the installation of a number
     25of packages that will form the basic development suite (or <emphasis>toolchain</emphasis>) which is
     26used to build the actual system in <xref linkend="chapter-building-system"/>. Some of these
     27packages are needed to resolve circular dependencies -- for example, to compile
     28a compiler you need a compiler.</para>
    2229
    23 <para>The first thing to be done in <xref linkend="chapter-temporary-tools"/>
    24 is build a first pass of the <emphasis>toolchain</emphasis>, consisting of
    25 Binutils and GCC. The programs from these packages will be linked statically in
    26 order for them to be usable independently of the host system (thus making it
    27 in theory possible to skip the second passes). The second thing to do is build
    28 Glibc, the C library. Glibc will be compiled by the just-built toolchain
    29 programs. The third thing to do is build a second pass of the toolchain, this
    30 time linking it dynamically against the newly built Glibc. The remaining <xref
    31 linkend="chapter-temporary-tools"/> packages are all built using this second
    32 pass toolchain and are dynamically linked against the new host-independent
    33 Glibc. When this is done, the LFS installation process will no longer depend on
    34 the host distribution, with the exception of the running kernel.</para>
     30<para>The first thing to be done in <xref linkend="chapter-temporary-tools"/> is build a
     31first pass of the toolchain, made up of Binutils and GCC. The programs from
     32these packages will be linked statically in order for them to be usable
     33independently of the host system. The second thing to do is build Glibc, the
     34C library. Glibc will be compiled by the toolchain programs just built in
     35the first pass. The third thing to do is build a second pass of the toolchain.
     36This time the toolchain will be dynamically linked against the newly built
     37Glibc. The remaining <xref linkend="chapter-temporary-tools"/> packages are all built using
     38this second pass toolchain and dynamically linked against the new
     39host-independent Glibc. When this is done, the LFS installation process will no
     40longer depend on the host distribution, with the exception of the running
     41kernel.</para>
    3542
    3643<para>You may be thinking that <quote>this seems like a lot of work, just to
    3744get away from my host distribution</quote>. Well, a full technical explanation
    38 is provided at the start of <xref linkend="chapter-temporary-tools"/>,
    39 including some notes on the differences between statically and dynamically
    40 linked programs.</para>
     45is provided at the start of <xref linkend="chapter-temporary-tools"/>, including some notes
     46on the differences between statically and dynamically linked programs.</para>
    4147
    42 <para>In <xref linkend="chapter-building-system"/> your real LFS system will be
    43 built. The <command>chroot</command> (change root) program is used to enter a
    44 virtual environment and start a new shell whose root directory will be set to
    45 the LFS partition. This is very similar to rebooting and instructing the kernel
    46 to mount the LFS partition as the root partition. The reason that you don't
    47 actually reboot, but instead chroot, is that creating a bootable system
    48 requires additional work which isn't necessary just yet. But the major
    49 advantage is that chrooting allows you to continue using the host while LFS is
    50 being built. While waiting for package compilation to complete, you can simply
    51 switch to a different VC (Virtual Console) or X desktop and continue using the
    52 computer as you normally would.</para>
     48<para>In <xref linkend="chapter-building-system"/> your real LFS system will be built. The
     49chroot (change root) program is used to enter a virtual environment and start
     50a new shell whose root directory will be set to the LFS partition. This is very
     51similar to rebooting and instructing the kernel to mount the LFS partition as
     52the root partition. The reason that you don't actually reboot, but instead
     53chroot, is that creating a bootable system requires additional work which isn't
     54necessary just yet. But the major advantage is that <quote>chrooting</quote> allows you to
     55continue using the host while LFS is being built. While waiting for package
     56compilation to complete, you can simply switch to a different VC (Virtual
     57Console) or X desktop and continue using the computer as you normally
     58would.</para>
    5359
    5460<para>To finish the installation, the bootscripts are set up in
    5561<xref linkend="chapter-bootscripts"/>, the kernel and bootloader are set up in
    56 <xref linkend="chapter-mixture"/>, and <xref linkend="chapter-finalizing"/>
    57 contains some pointers to help you after you finish the book. Then, finally,
    58 you're ready to reboot your computer into your new LFS system.</para>
     62<xref linkend="chapter-bootable"/>, and <xref linkend="chapter-finalizing"/> contains some
     63pointers to help you after you finish the book. Then, finally, you're ready to
     64reboot your computer into your new LFS system.</para>
    5965
    60 <para>This is the process in a nutshell. Detailed information on all the steps
    61 taken is given in the chapters and sections as you progress through them. If
    62 something isn't completely clear now, don't worry, everything will fall into
    63 place soon.</para>
     66<para>This is the process in a nutshell. Detailed information on the steps you
     67will take are discussed in the chapters and package descriptions as you
     68progress through them. If something isn't completely clear now, don't worry,
     69everything will fall into place soon.</para>
     70
     71<para>Please read <xref linkend="chapter-final-preps"/> carefully as it explains
     72 a few important things you should be aware of before you begin to work through
     73<xref linkend="chapter-temporary-tools"/> and beyond.</para>
    6474
    6575</sect1>
Note: See TracChangeset for help on using the changeset viewer.