mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-03-05 22:04:48 +00:00
More text dropped.
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@4425 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
86ca6e777e
commit
ae79672711
@ -7,6 +7,7 @@
|
||||
<title>Introduction</title>
|
||||
<?dbhtml filename="introduction.html"?>
|
||||
|
||||
<!--
|
||||
<para>Below is a list of packages you need to download for building a basic
|
||||
Linux system. The listed version numbers correspond to versions of the
|
||||
software that are <emphasis>known</emphasis> to work, and this book is
|
||||
@ -37,11 +38,14 @@ during all stages of the building process.</para>
|
||||
|
||||
<para>So you may want to execute, as <emphasis>root</emphasis>, the following
|
||||
command before starting your download session:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>mkdir $LFS/sources</userinput></screen>
|
||||
|
||||
<para>And make this directory writable (and sticky) for your normal user -- as
|
||||
<!--
|
||||
<para>And make this directory writable (and sticky) for your normal user - as
|
||||
you won't do the downloading as <emphasis>root</emphasis>, we guess:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>chmod a+wt $LFS/sources</userinput></screen>
|
||||
|
||||
|
@ -132,7 +132,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>Glibc (&glibc-version;) - 13,800 KB: -- <emphasis>(see Note 1 below)</emphasis></term>
|
||||
<term>Glibc (&glibc-version;) - 13,800 KB: </term>
|
||||
<listitem>
|
||||
<para><ulink url="ftp://sources.redhat.com/pub/glibc/snapshots/"/></para>
|
||||
</listitem>
|
||||
@ -427,6 +427,8 @@
|
||||
|
||||
</variablelist>
|
||||
|
||||
<!--
|
||||
<para>Total size of these packages: 135 MB</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -7,13 +7,14 @@
|
||||
<title>Needed patches</title>
|
||||
<?dbhtml filename="patches.html"?>
|
||||
|
||||
<!--
|
||||
<para>Besides all those packages, you'll also need several patches. These
|
||||
correct tiny mistakes in the packages that should be fixed by the maintainer,
|
||||
or just make some small modifications to bend things our way. You'll need the
|
||||
following:</para>
|
||||
-->
|
||||
|
||||
<variablelist role="materials">
|
||||
<bridgehead renderas="sect3">Patches</bridgehead>
|
||||
|
||||
<varlistentry>
|
||||
<term>Bash Various Fixes - 21 KB:</term>
|
||||
@ -149,10 +150,12 @@ following:</para>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<!--
|
||||
<para>In addition to the above required patches, there exist a number of
|
||||
optional ones created by the LFS community. Most of these solve slight
|
||||
problems, or enable some functionality that's not enabled by default.
|
||||
Feel free to examine the patches database, located at <ulink url="&lfs-root;patches/"/>,
|
||||
and pick any additional patches you wish to use.</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -7,6 +7,9 @@
|
||||
<title>About $LFS</title>
|
||||
<?dbhtml filename="aboutlfs.html"?>
|
||||
|
||||
<para>See testing</para>
|
||||
|
||||
<!--
|
||||
<para>Throughout this book the environment variable LFS will be used several
|
||||
times. It is paramount that this variable is always defined. It should be set
|
||||
to the mount point you chose for your LFS partition. Check that your LFS
|
||||
@ -29,5 +32,6 @@ you set the variable to) when it processes the command line.</para>
|
||||
<para>Don't forget to check that <quote>$LFS</quote> is set whenever you leave and
|
||||
reenter the environment (as when doing a <quote>su</quote> to root or another user).
|
||||
</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -7,12 +7,15 @@
|
||||
<title>About SBUs</title>
|
||||
<?dbhtml filename="aboutsbus.html"?>
|
||||
|
||||
<para>See testing</para>
|
||||
|
||||
<!--
|
||||
<para>Most people would like to know beforehand approximately how long it
|
||||
takes to compile and install each package. But <quote>Linux from Scratch</quote> is built
|
||||
on so many different systems, it is not possible to give actual times that are
|
||||
anywhere near accurate: the biggest package (Glibc) won't take more than
|
||||
twenty minutes on the fastest systems, but will take something like three days
|
||||
on the slowest -- no kidding. So instead of giving actual times, we've come up
|
||||
on the slowest - no kidding. So instead of giving actual times, we've come up
|
||||
with the idea of using the <emphasis>Static Binutils Unit</emphasis>
|
||||
(abbreviated to <emphasis>SBU</emphasis>).</para>
|
||||
|
||||
@ -40,5 +43,6 @@ that you won't mind.</para>
|
||||
|
||||
<para>If you wish to see actual timings for specific machines, have a look at
|
||||
<ulink url="&lfs-root;~bdubbs/"/>.</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -7,6 +7,9 @@
|
||||
<title>About the test suites</title>
|
||||
<?dbhtml filename="abouttestsuites.html"?>
|
||||
|
||||
<para>See testing</para>
|
||||
|
||||
<!--
|
||||
<para>Most packages provide a test suite. Running the test suite for a newly
|
||||
built package is generally a good idea, as it can provide a nice sanity check
|
||||
that everything compiled correctly. A test suite that passes its set of checks
|
||||
@ -14,7 +17,7 @@ usually proves that the package is functioning as the developer intended. It
|
||||
does not, however, guarantee that the package is totally bug free.</para>
|
||||
|
||||
<para>Some test suites are more important than others. For example, the test
|
||||
suites for the core toolchain packages -- GCC, Binutils, and Glibc -- are of
|
||||
suites for the core toolchain packages - GCC, Binutils, and Glibc - are of
|
||||
the utmost importance due to their central role in a properly functioning
|
||||
system. But be warned, the test suites for GCC and Glibc can take a very long
|
||||
time to complete, especially on slower hardware.</para>
|
||||
@ -40,5 +43,6 @@ more detail later on in <xref linkend="chapter-temporary-tools"/>.</para>
|
||||
<para>Sometimes package test suites will give false failures. You can
|
||||
consult the LFS Wiki at <ulink url="&wiki-root;"/> to verify that these
|
||||
failures are normal. This applies to all tests throughout the book.</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -7,6 +7,7 @@
|
||||
<title>Adding the user lfs</title>
|
||||
<?dbhtml filename="addinguser.html"?>
|
||||
|
||||
<!--
|
||||
<para>When logged in as <emphasis>root</emphasis>, making a single mistake
|
||||
can damage or even wreck your system. Therefore we recommend that you
|
||||
build the packages in this chapter as an unprivileged user. You could
|
||||
@ -15,10 +16,12 @@ work environment we'll create a new user <emphasis>lfs</emphasis> as a
|
||||
member of a new group (also named <emphasis>lfs</emphasis>) and
|
||||
use this one during the installation process. As <emphasis>root</emphasis>,
|
||||
issue the following commands to add the new user:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>groupadd lfs
|
||||
useradd -s /bin/bash -g lfs -m -k /dev/null lfs</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>The meaning of the switches:</para>
|
||||
|
||||
<variablelist>
|
||||
@ -52,27 +55,36 @@ the special null device.</para></listitem>
|
||||
|
||||
<para>If you want to be able to log in as <emphasis>lfs</emphasis>, then give
|
||||
<emphasis>lfs</emphasis> a password:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>passwd lfs</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>and grant <emphasis>lfs</emphasis> full access to
|
||||
<filename class="directory">$LFS/tools</filename> by making
|
||||
<emphasis>lfs</emphasis> the directory owner:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>chown lfs $LFS/tools</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>If you made a separate working directory as suggested, give user
|
||||
<emphasis>lfs</emphasis> ownership of this directory too:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>chown lfs $LFS/sources</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>Next, login as user <emphasis>lfs</emphasis>. This can be done via a
|
||||
virtual console, through a display manager, or with the following substitute
|
||||
user command:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>su - lfs</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>The <quote><parameter>-</parameter></quote> instructs <command>su</command> to
|
||||
start a <emphasis>login</emphasis> shell.</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -7,6 +7,7 @@
|
||||
<title>Creating the $LFS/tools directory</title>
|
||||
<?dbhtml filename="creatingtoolsdir.html"?>
|
||||
|
||||
<!--
|
||||
<para>All programs compiled in <xref linkend="chapter-temporary-tools"/> will be installed under <filename
|
||||
class="directory">$LFS/tools</filename> to keep them separate from the
|
||||
programs compiled in <xref linkend="chapter-building-system"/>. The programs compiled here are only
|
||||
@ -20,19 +21,23 @@ see what files they make use of or link against. To make this searching easier
|
||||
you may want to choose a unique name for the directory in which the temporary
|
||||
tools are stored. Instead of the simple <quote>tools</quote> you could use
|
||||
something like <quote>tools-for-lfs</quote>. However, you'll need to be careful
|
||||
to adjust all references to <quote>tools</quote> throughout the book --
|
||||
to adjust all references to <quote>tools</quote> throughout the book -
|
||||
including those in any patches, notably the GCC Specs Patch.</para>
|
||||
|
||||
<para>Create the required directory by running the following:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>mkdir $LFS/tools</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>The next step is to create a <filename>/tools</filename> symlink on
|
||||
your <emphasis>host</emphasis> system. It will point to the directory we just created on the LFS
|
||||
partition:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>ln -s $LFS/tools /</userinput></screen>
|
||||
|
||||
<!--
|
||||
<note><para>The above command is correct. The <command>ln</command> command
|
||||
has a few syntactic variations, so be sure to check the info page before
|
||||
reporting what you may think is an error.</para></note>
|
||||
@ -42,5 +47,6 @@ refers to <filename class="directory">/tools</filename>, meaning that the compil
|
||||
and linker will work both in this chapter (when we are still using some tools
|
||||
from the host) <emphasis>and</emphasis> in the next (when we are <quote>chrooted</quote> to
|
||||
the LFS partition).</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
@ -7,15 +7,18 @@
|
||||
<title>Setting up the environment</title>
|
||||
<?dbhtml filename="settingenvironment.html"?>
|
||||
|
||||
<!--
|
||||
<para>We're going to set up a good working environment by creating two new
|
||||
startup files for the <command>bash</command> shell. While logged in as
|
||||
user <emphasis>lfs</emphasis>, issue the following command to create a new
|
||||
<filename>.bash_profile</filename>:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>cat > ~/.bash_profile << "EOF"
|
||||
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
|
||||
EOF</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>Normally, when you log on as user <emphasis>lfs</emphasis>,
|
||||
the initial shell is a <emphasis>login</emphasis> shell which reads the
|
||||
<filename>/etc/profile</filename> of your host (probably containing some
|
||||
@ -31,6 +34,7 @@ the goal of enforcing a clean environment.</para>
|
||||
which doesn't read the <filename>/etc/profile</filename> or
|
||||
<filename>.bash_profile</filename> files, but reads the
|
||||
<filename>.bashrc</filename> file instead. Create this latter file now:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>cat > ~/.bashrc << "EOF"
|
||||
set +h
|
||||
@ -41,6 +45,7 @@ PATH=/tools/bin:/bin:/usr/bin
|
||||
export LFS LC_ALL PATH
|
||||
EOF</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>The <command>set +h</command> command turns off
|
||||
<command>bash</command>'s hash function. Normally hashing is a useful
|
||||
feature: <command>bash</command> uses a hash table to remember the
|
||||
@ -74,6 +79,7 @@ during the rest of the building process.</para>
|
||||
|
||||
<para>Finally, to have our environment fully prepared for building the
|
||||
temporary tools, source the just-created profile:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>source ~/.bash_profile</userinput></screen>
|
||||
|
||||
|
@ -7,12 +7,16 @@
|
||||
<title>Rebooting the system</title>
|
||||
<?dbhtml filename="reboot.html"?>
|
||||
|
||||
<!--
|
||||
<para>Now that all of the software has been installed, it is time to
|
||||
reboot the computer. First exit from the chroot environment:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>logout</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>Then unmount the virtual files systems:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>umount $LFS/dev/pts
|
||||
umount $LFS/dev/shm
|
||||
@ -20,7 +24,9 @@ umount $LFS/dev
|
||||
umount $LFS/proc
|
||||
umount $LFS/sys</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>Unmount the LFS file system itself:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>umount $LFS</userinput></screen>
|
||||
|
||||
@ -31,14 +37,18 @@ partitions before unmounting the main one, like this:</para>
|
||||
umount $LFS/home
|
||||
umount $LFS</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>Now, reboot the system with:</para>
|
||||
-->
|
||||
|
||||
<screen><userinput>shutdown -r now</userinput></screen>
|
||||
|
||||
<!--
|
||||
<para>Assuming the Grub boot loader was set up as outlined earlier, the menu
|
||||
is set to boot <emphasis>LFS &version;</emphasis> automatically.</para>
|
||||
|
||||
<para>When the reboot is complete, the LFS system is ready for use and
|
||||
software can be added.</para>
|
||||
-->
|
||||
|
||||
</sect1>
|
||||
|
Loading…
Reference in New Issue
Block a user