source: chapter08/kernel-inst.xml@ 140190c0

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 140190c0 was cfdcaef7, checked in by Jeremy Utley <jeremy@…>, 21 years ago

Added tmpfs mount at /dev/shm - Bugzilla bug 562

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

  • Property mode set to 100644
File size: 3.3 KB
Line 
1<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>
2
3<sect2>
4<title>Installation of the kernel</title>
5
6<para>Building the kernel involves a few steps: configuration,
7compilation, and installation. If you don't like the way this
8book configures the kernel, view the <filename>README</filename>
9file in the kernel source tree for alternative methods.</para>
10
11<para>Prepare for compilation by running the following command:</para>
12
13<para><screen><userinput>make mrproper</userinput></screen></para>
14
15<para>This ensures that the kernel tree is absolutely clean. The kernel
16team recommends that this command be issued prior to
17<emphasis>each</emphasis> kernel compilation. You shouldn't rely
18on the source tree being clean after untarring.</para>
19
20<para>Configure the kernel via a menu-driven interface:</para>
21
22<para><screen><userinput>make menuconfig</userinput></screen></para>
23
24<para><userinput>make oldconfig</userinput> may be more appropriate
25in some situations. See the <filename>README</filename> file for
26more information.</para>
27
28<para>If you wish, you may skip kernel configuration by copying the
29kernel config file, <filename>.config</filename>, from your host
30system to the
31<filename class="directory">$LFS/usr/src/linux-&kernel-version;</filename>
32directory.</para>
33
34<para>It's important to note that to be compliant with Posix shared memory
35requirements, we must enable the tmpfs filesystem option, and mount a tmpfs
36filesystem at /dev/shm.</para>
37
38<para>Verify dependencies and create dependency information files:</para>
39
40<para><screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc dep</userinput></screen></para>
41
42<para>Compile the kernel image:</para>
43
44<para><screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc bzImage</userinput></screen></para>
45
46<para>Compile the drivers which have been configured as modules:</para>
47
48<para><screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc modules</userinput></screen></para>
49
50<para>If you intend to use kernel modules, you will need an
51<filename>/etc/modules.conf</filename> file. Information pertaining
52to modules and to kernel configuration in general may be found in the
53kernel documentation, which is stored stored in
54<filename>/usr/src/linux-&kernel-version;/Documentation</filename>. The
55modules.conf man page and the kernel HOWTO at
56<ulink url="&tldp-root;HOWTO/Kernel-HOWTO.html"/> may also be of
57interest to you.</para>
58
59<para>Install the modules:</para>
60
61<para><screen><userinput>make CC=/opt/gcc-2.95.3/bin/gcc modules_install</userinput></screen></para>
62
63<para>Kernel compilation has finished, but some of the files created
64still reside in the source tree. To complete the installation, two
65files should to be copied to the <filename>/boot</filename>
66directory.</para>
67
68<para>The path to the kernel file may vary depending on the platform
69you're using. Issue the following command to install the kernel:</para>
70
71<para><screen><userinput>cp arch/i386/boot/bzImage /boot/lfskernel</userinput></screen></para>
72
73<para><filename>System.map</filename> is a symbol file for the kernel.
74It maps the function entrypoints of every function in the kernel API,
75as well as the addresses of the kernel data structures for the running
76kernel. Issue the following command to install the map file:</para>
77
78<para><screen><userinput>cp System.map /boot</userinput></screen></para>
79
80</sect2>
Note: See TracBrowser for help on using the repository browser.