source: BOOK/final-system/x86/linux-headers.xml@ 65c72b4

clfs-1.2 clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 65c72b4 was e75365c, checked in by Jim Gifford <clfs@…>, 19 years ago

r3290@server (orig r1524): ken | 2006-05-05 10:33:52 -0700
fix typo in find for headers.

  • Property mode set to 100644
File size: 3.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6]>
7
8<sect1 id="ch-system-linux-headers" role="wrap">
9 <?dbhtml filename="linux-headers.html"?>
10
11 <title>Linux-Headers-&linux-headers-version;</title>
12
13 <indexterm zone="ch-system-linux-headers">
14 <primary sortas="a-Linux-Headers">Linux-Headers</primary>
15 </indexterm>
16
17 <sect2 role="package">
18 <title/>
19
20 <para>The Linux Headers package contains the
21 <quote>sanitized</quote> kernel headers.</para>
22
23 <segmentedlist>
24 <segtitle>&dependencies;</segtitle>
25
26 <seglistitem>
27 <seg>Coreutils and Findutils</seg>
28 </seglistitem>
29 </segmentedlist>
30
31 </sect2>
32
33 <sect2 role="installation">
34 <title>Installation of Linux-Headers</title>
35
36 <para os="a">For years it has been common practice to use <quote>raw</quote>
37 kernel headers (straight from a kernel tarball) in <filename
38 class="directory">/usr/include</filename>, but over the last few
39 years, the kernel developers have taken a strong stance that this
40 should not be done. This gave birth to the Linux-Libc-Headers Project,
41 which was designed to maintain an API stable version of the Linux
42 headers. But recently this project stopped producing updates. Cross-LFS
43 decided to come up with our own santized headers and placed them in
44 the book.</para>
45
46 <para os="b">Install the header files that are common to all architectures:</para>
47
48<screen os="c"><userinput>install -dv /usr/include/{asm,asm-generic,linux,net,mtd,scsi,sound}
49cp -av include/asm-generic/* /usr/include/asm-generic
50cp -av include/linux/* /usr/include/linux
51cp -av include/mtd/* /usr/include/mtd
52cp -av include/net/* /usr/include/net
53cp -av include/scsi/* /usr/include/scsi
54cp -av include/sound/* /usr/include/sound</userinput></screen>
55
56 <para os="d">Install the header files that are specific to this architecture:</para>
57
58<screen><userinput>cp -av include/asm-i386/* /usr/include/asm</userinput></screen>
59
60 <para os="e">Ensure that all the headers are owned by
61 <systemitem class="username">root</systemitem>:</para>
62
63<screen os="f"><userinput>chown -Rv root:root /usr/include/{asm,asm-generic,linux,mtd,net,scsi,sound}</userinput></screen>
64
65 <para os="g">Make sure the users can read the headers:</para>
66
67<screen os="h"><userinput>find /usr/include/{asm,asm-generic,linux,mtd,net,scsi,sound} -type d -exec chmod -v 755 {} \;
68find /usr/include/{asm,asm-generic,linux,mtd,net,scsi,sound} -type f -exec chmod -v 644 {} \;</userinput></screen>
69
70 </sect2>
71
72 <sect2 id="contents-linux-headers" role="content">
73 <title>Contents of Linux-Headers</title>
74
75 <segmentedlist>
76 <segtitle>Installed headers</segtitle>
77
78 <seglistitem>
79 <seg>/usr/include/{asm,linux}/*.h</seg>
80 </seglistitem>
81 </segmentedlist>
82
83 <variablelist>
84 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
85 <?dbfo list-presentation="list"?>
86 <?dbhtml list-presentation="table"?>
87
88 <varlistentry id="linux-headers">
89 <term><filename
90 class="headerfile">/usr/include/{asm,linux}/*.h</filename></term>
91 <listitem>
92 <para>The Linux API headers</para>
93 <indexterm zone="ch-system-linux-headers linux-headers">
94 <primary
95 sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary>
96 </indexterm>
97 </listitem>
98 </varlistentry>
99
100 </variablelist>
101
102 </sect2>
103
104</sect1>
Note: See TracBrowser for help on using the repository browser.