source: chapter06/linux-libc-headers.xml@ ddd16a3

Last change on this file since ddd16a3 was ddd16a3, checked in by Bruce Dubbs <bdubbs@…>, 18 years ago

Added inotify patch to the libc headers

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

  • Property mode set to 100644
File size: 3.1 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-libc-headers" role="wrap">
9 <?dbhtml filename="linux-libc-headers.html"?>
10
11 <title>Linux-Libc-Headers-&linux-libc-headers-version;</title>
12
13 <indexterm zone="ch-system-linux-libc-headers">
14 <primary sortas="a-Linux-Libc-Headers">Linux-Libc-Headers</primary>
15 </indexterm>
16
17 <sect2 role="package">
18 <title/>
19
20 <para>The Linux-Libc-Headers package contains the
21 <quote>sanitized</quote> kernel headers.</para>
22
23 <segmentedlist>
24 <segtitle>&buildtime;</segtitle>
25 <segtitle>&diskspace;</segtitle>
26
27 <seglistitem>
28 <seg>&linux-libc-headers-ch6-sbu;</seg>
29 <seg>&linux-libc-headers-ch6-du;</seg>
30 </seglistitem>
31 </segmentedlist>
32
33 </sect2>
34
35 <sect2 role="installation">
36 <title>Installation of Linux-Libc-Headers</title>
37
38 <para>For years it has been common practice to use <quote>raw</quote>
39 kernel headers (straight from a kernel tarball) in <filename
40 class="directory">/usr/include</filename>, but over the last few
41 years, the kernel developers have taken a strong stance that this
42 should not be done. This gave birth to the Linux-Libc-Headers Project,
43 which was designed to maintain an API stable version of the Linux
44 headers.</para>
45
46 <para>Add a header that is needed by some applications:</para>
47
48<screen><userinput>patch -Np1 -i ../&linux-inotify-patch;</userinput></screen>
49
50 <para>Install the header files:</para>
51
52<screen><userinput>install -dv /usr/include/asm
53cp -Rv include/asm-i386/* /usr/include/asm
54cp -Rv include/linux /usr/include</userinput></screen>
55
56 <para>Ensure that all the headers are owned by root:</para>
57
58<screen><userinput>chown -Rv root:root /usr/include/{asm,linux}</userinput></screen>
59
60 <para>Make sure the users can read the headers:</para>
61
62<screen><userinput>find /usr/include/{asm,linux} -type d -exec chmod -v 755 {} \;
63find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;</userinput></screen>
64
65 </sect2>
66
67 <sect2 id="contents-linux-libc-headers" role="content">
68 <title>Contents of Linux-Libc-Headers</title>
69
70 <segmentedlist>
71 <segtitle>Installed headers</segtitle>
72
73 <seglistitem>
74 <seg>/usr/include/{asm,linux}/*.h</seg>
75 </seglistitem>
76 </segmentedlist>
77
78 <variablelist>
79 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
80 <?dbfo list-presentation="list"?>
81 <?dbhtml list-presentation="table"?>
82
83 <varlistentry id="linux-libc-headers">
84 <term><filename class="headerfile">/usr/include/{asm,linux}/*.h</filename></term>
85 <listitem>
86 <para>The Linux API headers</para>
87 <indexterm zone="ch-system-linux-libc-headers linux-libc-headers">
88 <primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary>
89 </indexterm>
90 </listitem>
91 </varlistentry>
92
93 </variablelist>
94
95 </sect2>
96
97</sect1>
Note: See TracBrowser for help on using the repository browser.