aboutsummaryrefslogtreecommitdiffstats
path: root/chapter08
diff options
context:
space:
mode:
Diffstat (limited to 'chapter08')
-rw-r--r--chapter08/kernel-inst.xml87
1 files changed, 54 insertions, 33 deletions
diff --git a/chapter08/kernel-inst.xml b/chapter08/kernel-inst.xml
index e05ab2786..5d63dd322 100644
--- a/chapter08/kernel-inst.xml
+++ b/chapter08/kernel-inst.xml
@@ -3,22 +3,45 @@
<sect2>
<title>Installation of the kernel</title>
-<para>Building the kernel involves a few steps: configuring it and compiling
-it. There are a few ways to configure the kernel. If you don't like the
-way this book does it, read the <filename>README</filename> that comes
-with the kernel source tree, and find out what the other options are.</para>
-
-<para>Something you could do, is take the <filename>.config</filename>
-file from your host distribution's kernel source tree and copy it to
-<filename class="directory">$LFS/usr/src/linux-&kernel-version;</filename>.
-This way you don't have to configure the entire kernel from scratch and
-can use your current values. If you choose to do this, first run the
-<userinput>make mrproper</userinput> command below, then copy the
-<filename>.config</filename> file over, then run
-<userinput>make menuconfig</userinput> followed by the rest of the commands
-(<userinput>make oldconfig</userinput> may be better in some situations.
-See the <filename>README</filename> file for more details when to use
-<userinput>make oldconfig</userinput>).</para>
+<para>Building the kernel involves a few steps: configuration,
+compilation, and installation. If you don't like the way this
+book configures the kernel, view the <filename>README</filename>
+file in the kernel source tree for alternative methods.</para>
+
+<para>Prepare for compilation by running the following command:</para>
+
+<para><screen><userinput>make mrproper</userinput></screen></para>
+
+<para>This ensures that the kernel tree is absolutely clean. The kernel
+team recommends that this command be issued prior to
+<emphasis>each</emphasis> kernel compilation. You shouldn't rely
+on the source tree being clean after untarring.</para>
+
+<para>Configure the kernel via a menu-driven interface:</para>
+
+<para><screen><userinput>make menuconfig</userinput></screen></para>
+
+<para><userinput>make oldconfig</userinput> may be more appropriate
+in some situations. See the <filename>README</filename> file for
+more information.</para>
+
+<para>If you wish, you may skip kernel configuration by copying the
+kernel config file, <filename>.config</filename>, from your host
+system to the
+<filename class="directory">$LFS/usr/src/linux-&kernel-version;</filename>
+directory.</para>
+
+<para>Verify dependencies and create dependency information files:</para>
+
+<para><screen><userinput>make dep</userinput></screen></para>
+
+<para>Compile the kernel image:</para>
+
+<para><screen><userinput>make bzImage</userinput></screen></para>
+
+<para>Compile the drivers which have been configured as modules:</para>
+
+<para><screen><userinput>make modules</userinput></screen></para>
<para>If you intend to use kernel modules, you will need an
<filename>/etc/modules.conf</filename> file. Information pertaining
@@ -29,27 +52,25 @@ modules.conf man page and the kernel HOWTO at
<ulink url="&tldp-root;HOWTO/Kernel-HOWTO.html"/> may also be of
interest to you.</para>
-<para>Prepare for compilation by running the following command:</para>
+<para>Install the modules:</para>
-<para><screen><userinput>make mrproper</userinput></screen></para>
+<para><screen><userinput>make modules_install</userinput></screen></para>
-<para>This ensures that the kernel tree is absolutely clean. The kernel
-team recommends that this command be issued prior to
-<emphasis>each</emphasis> kernel compilation. You shouldn't rely
-on the source tree being clean after untarring.</para>
+<para>Kernel compilation has finished, but some of the files created
+still reside in the source tree. To complete the installation, two
+files should to be copied to the <filename>/boot</filename>
+directory.</para>
+
+<para>The path to the kernel file may vary depending on the platform
+you're using. Issue the following command to install the kernel:</para>
-<para><screen><userinput>make menuconfig &amp;&amp;
-make dep &amp;&amp;
-make bzImage &amp;&amp;
-make modules &amp;&amp;
-make modules_install</userinput></screen></para>
+<para><screen><userinput>cp arch/i386/boot/bzImage /boot/lfskernel</userinput></screen></para>
-<para>Kernel compilation has finished, but the files created are still
-in the source tree. The path to the kernel file,
-<filename>arch/i386/boot/bzImage</filename> below, may vary depending
-on the platform you're using.</para>
+<para><filename>System.map</filename> is a symbol file for the kernel.
+It maps the function entrypoints of every function in the kernel API,
+as well as the addresses of the kernel data structures for the running
+kernel. Issue the following command to install the map file:</para>
-<para><screen><userinput>cp arch/i386/boot/bzImage /boot/lfskernel &amp;&amp;
-cp System.map /boot</userinput></screen></para>
+<para><screen><userinput>cp System.map /boot</userinput></screen></para>
</sect2>