source: chapter01/how.xml@ f57e3d1

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_0 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
Last change on this file since f57e3d1 was f57e3d1, checked in by Greg Schafer <greg@…>, 21 years ago

Rearrange "How things are going to be done" section. Simplify seds in "Locking in Glibc" and "Re-adjusting the toolchain" sections. Miscellaneous other fixes.

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

  • Property mode set to 100644
File size: 3.9 KB
Line 
1<sect1 id="ch01-how">
2<title>How things are going to be done</title>
3<?dbhtml filename="how.html" dir="chapter01"?>
4
5<para>You are going to build your LFS system by using a previously installed
6Linux distribution (such as Debian, Mandrake, Red Hat, or SuSE). This existing
7Linux system (the host) will be used as a starting point, because you will need
8programs like a compiler, linker and shell to build the new system. Normally
9all the required tools are available if you selected <quote>development</quote>
10as one of the options when you installed your distribution.</para>
11
12<para>In Chapter 3 you will first create a new Linux native partition and file
13system, the place where your new LFS system will be compiled and installed. Then
14in Chapter 4 you download all the packages and patches required to build an LFS
15system, and store them on the new file system.</para>
16
17<para>Chapter 5 will then discuss the installation of a number of packages that
18will form the basic development suite (or toolchain) which is used to build the
19actual system in Chapter 6. Some of these packages are needed to resolve
20circular dependencies. For example, to compile a compiler you need a
21compiler.</para>
22
23<para>The first thing to be done in Chapter 5 is build a first pass of the
24toolchain, which is made up of Binutils and GCC. The programs from these
25packages will be linked statically in order for them to be used independently
26of the host system. The second thing to do is build Glibc, the C library. Glibc
27will be compiled by the toolchain programs we just built in the first
28pass. The third thing to do is build a second pass of the toolchain. This time
29the toolchain will be dynamically linked against the newly built Glibc. The
30remaining Chapter 5 packages are all built using this second pass toolchain and
31dynamically linked against the new host-independent Glibc. When this is done,
32the LFS installation process will no longer depend on the host distribution,
33with the exception of the running kernel.</para>
34
35<para>You may be asking yourself <quote>that seems like a lot of work, just to
36get away from my host distribution?</quote>. A full technical and in-depth
37explanation is provided at the start of Chapter 5, including some notes on the
38differences between statically and dynamically linked programs.</para>
39
40<para>In Chapter 6 your real LFS system will be built. The chroot (change root)
41program is used to enter a virtual environment and start a new shell whose root
42directory will be set to the LFS partition. This is very similar to rebooting
43and instructing the kernel to mount the LFS partition as the root partition.
44The reason that you don't actually reboot, but instead chroot, is that creating
45a bootable system requires additional work which isn't necessary just yet.
46Another advantage is that chrooting allows you to continue using the host while
47LFS is being built. While waiting for package compilation to complete, you can
48simply switch to a different VC (Virtual Console) or X desktop and continue
49using the computer as you normally would.</para>
50
51<para>When all the software from Chapter 6 is installed, the temporary tools
52built in Chapter 5 are removed. In Chapters 7, 8 and 9 the installation will
53then be finalized. The bootscripts are set up in Chapter 7, the kernel and
54bootloader are set up in Chapter 8, and Chapter 9 has some pointers to help
55you after you finish the book. Then, finally, you're ready to reboot your
56computer into your new LFS system.</para>
57
58<para>This is the process in a nutshell. Detailed information on the steps you
59will take are discussed in the chapters and package descriptions as you
60progress through them. If something isn't completely clear now, don't worry,
61everything will fall into place soon.</para>
62
63<para>Please read Chapter 2 carefully as it explains a few important things you
64should be aware of before you begin to work through Chapters 5 and
65beyond.</para>
66
67</sect1>
68
Note: See TracBrowser for help on using the repository browser.