aboutsummaryrefslogtreecommitdiffstats
path: root/chapter08/kernel.xml
blob: 70d7675a50d6ef39cdb838c911431c0ddeb18fca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<sect1 id="ch08-kernel">
<title>Installing Linux-&kernel-version;</title>
<?dbhtml filename="kernel.html" dir="chapter08"?>

<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 &amp;&amp;
make menuconfig &amp;&amp;
make dep &amp;&amp;
make bzImage &amp;&amp;
make modules &amp;&amp;
make modules_install &amp;&amp;
cp arch/i386/boot/bzImage /boot/lfskernel &amp;&amp;
cp System.map /boot</userinput></screen></para>

<para>Note: the arch/i386/boot/bzImage path may vary on 
different platforms.</para>

&aa-kernel-dep;

</sect1>