diff options
-rw-r--r-- | appendixa/kernel-dep.xml | 2 | ||||
-rw-r--r-- | appendixa/kernel-shortdesc.xml | 18 | ||||
-rw-r--r-- | chapter06/kernel-exp.xml | 2 | ||||
-rw-r--r-- | chapter08/kernel-inst.xml | 55 | ||||
-rw-r--r-- | chapter08/kernel.xml | 42 | ||||
-rw-r--r-- | entities/kernel.ent | 2 |
6 files changed, 80 insertions, 41 deletions
diff --git a/appendixa/kernel-dep.xml b/appendixa/kernel-dep.xml index 34da326bb..6a9a7dc06 100644 --- a/appendixa/kernel-dep.xml +++ b/appendixa/kernel-dep.xml @@ -1,3 +1,5 @@ +<sect2><title> </title><para> </para></sect2> + <sect2> <title>Linux Installation Dependencies</title> diff --git a/appendixa/kernel-shortdesc.xml b/appendixa/kernel-shortdesc.xml new file mode 100644 index 000000000..eb92d15c7 --- /dev/null +++ b/appendixa/kernel-shortdesc.xml @@ -0,0 +1,18 @@ +<sect2><title>Contents of Linux</title> + +<para>Last checked against version &kernel-contversion;.</para> + +<para>The Linux kernel is at the core of every Linux system. It's what makes +Linux tick. When a computer is turned on and boots a Linux system, the +very first piece of Linux software that gets loaded is the kernel. The +kernel initializes the system's hardware components: serial ports, parallel +ports, sound cards, network cards, IDE controllers, SCSI controllers and a +lot more. In a nutshell the kernel makes the hardware available so that the +software can run.</para> + +<para>Linux installs the following files:</para> + +<sect3><title>Program Files</title> +<para>kernel and kernel headers</para></sect3> + +</sect2> diff --git a/chapter06/kernel-exp.xml b/chapter06/kernel-exp.xml index 2956f0bd7..c24591e85 100644 --- a/chapter06/kernel-exp.xml +++ b/chapter06/kernel-exp.xml @@ -8,7 +8,7 @@ for that. At the end we remove it again.</para> <para><userinput>make mrproper</userinput>: 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 and that you +issued prior to <emphasis>each</emphasis> kernel compilation. You shouldn't rely on the source tree being clean after untarring.</para> <para><userinput>make include/linux/version.h</userinput> and diff --git a/chapter08/kernel-inst.xml b/chapter08/kernel-inst.xml new file mode 100644 index 000000000..e05ab2786 --- /dev/null +++ b/chapter08/kernel-inst.xml @@ -0,0 +1,55 @@ +<sect2><title> </title><para> </para></sect2> + +<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>If you intend to use kernel modules, you will need an +<filename>/etc/modules.conf</filename> file. Information pertaining +to modules and to kernel configuration in general may be found in the +kernel documentation, which is stored stored in +<filename>/usr/src/linux-&kernel-version;/Documentation</filename>. The +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><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><screen><userinput>make menuconfig && +make dep && +make bzImage && +make modules && +make modules_install</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><screen><userinput>cp arch/i386/boot/bzImage /boot/lfskernel && +cp System.map /boot</userinput></screen></para> + +</sect2> diff --git a/chapter08/kernel.xml b/chapter08/kernel.xml index 70d7675a5..f9587ac72 100644 --- a/chapter08/kernel.xml +++ b/chapter08/kernel.xml @@ -5,46 +5,8 @@ <screen>Estimated build time: &kernel-time; Estimated required disk space: &kernel-compsize;</screen> -<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>If you intend to use kernel modules, you will need an -<filename>/etc/modules.conf</filename> file. Information pertaining -to modules and to kernel configuration in general may be found in the -kernel documentation, which is stored stored in -<filename>/usr/src/linux-&kernel-version;/Documentation</filename>. The -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>The following commands are run to build the kernel:</para> - -<para><screen><userinput>make mrproper && -make menuconfig && -make dep && -make bzImage && -make modules && -make modules_install && -cp arch/i386/boot/bzImage /boot/lfskernel && -cp System.map /boot</userinput></screen></para> - -<para>Note: the arch/i386/boot/bzImage path may vary on -different platforms.</para> - +&aa-kernel-shortdesc; &aa-kernel-dep; +&c8-kernel-inst; </sect1> diff --git a/entities/kernel.ent b/entities/kernel.ent index 779496e8b..95830673a 100644 --- a/entities/kernel.ent +++ b/entities/kernel.ent @@ -8,11 +8,13 @@ <!ENTITY c6-kernel-manpages-inst SYSTEM "../chapter06/kernel-manpages-inst.xml"> <!ENTITY c8-kernel SYSTEM "../chapter08/kernel.xml"> +<!ENTITY c8-kernel-inst SYSTEM "../chapter08/kernel-inst.xml"> <!ENTITY aa-kernel SYSTEM "../appendixa/kernel.xml"> <!ENTITY aa-kernel-desc SYSTEM "../appendixa/kernel-desc.xml"> <!ENTITY aa-kernel-dep SYSTEM "../appendixa/kernel-dep.xml"> <!ENTITY aa-kernel-down SYSTEM "../appendixa/kernel-down.xml"> +<!ENTITY aa-kernel-shortdesc SYSTEM "../appendixa/kernel-shortdesc.xml"> <!ENTITY kernel-version "2.4.20"> <!ENTITY kernel-depversion "2.4.17"> |