| [3f8be484] | 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 | 
 | 
|---|
| [f097f3e] | 8 | <sect1 id="ch-system-linux-headers" role="wrap">
 | 
|---|
 | 9 |   <?dbhtml filename="linux-headers.html"?>
 | 
|---|
| [3f8be484] | 10 | 
 | 
|---|
| [f097f3e] | 11 |   <title>Linux-Headers-&linux-headers-version;</title>
 | 
|---|
| [3f8be484] | 12 | 
 | 
|---|
| [f097f3e] | 13 |   <indexterm zone="ch-system-linux-headers">
 | 
|---|
 | 14 |     <primary sortas="a-Linux-Headers">Linux-Headers</primary>
 | 
|---|
| [3f8be484] | 15 |   </indexterm>
 | 
|---|
 | 16 | 
 | 
|---|
 | 17 |   <sect2 role="package">
 | 
|---|
 | 18 |     <title/>
 | 
|---|
 | 19 | 
 | 
|---|
| [f097f3e] | 20 |     <para>The Linux Headers package contains the
 | 
|---|
| [3f8be484] | 21 |     <quote>sanitized</quote> kernel headers.</para>
 | 
|---|
 | 22 | 
 | 
|---|
 | 23 |   </sect2>
 | 
|---|
 | 24 | 
 | 
|---|
 | 25 |   <sect2 role="installation">
 | 
|---|
| [f097f3e] | 26 |     <title>Installation of Linux-Headers</title>
 | 
|---|
| [3f8be484] | 27 | 
 | 
|---|
| [9f08378] | 28 |     <para os="a">For years it has been common practice to use
 | 
|---|
 | 29 |     <quote>raw</quote> kernel headers (straight from a kernel tarball) in
 | 
|---|
 | 30 |     <filename class="directory">/usr/include</filename>, but over the last few
 | 
|---|
| [3f8be484] | 31 |     years, the kernel developers have taken a strong stance that this
 | 
|---|
| [4f049972] | 32 |     should not be done. This gave birth to the Linux-Libc-Headers Project,
 | 
|---|
| [3f8be484] | 33 |     which was designed to maintain an API stable version of the Linux
 | 
|---|
| [9f08378] | 34 |     headers. Recently this project stopped producing updates, so the Cross-LFS
 | 
|---|
 | 35 |     team started development on our own project to sanitize the headers.</para>
 | 
|---|
| [3f8be484] | 36 | 
 | 
|---|
| [91f60dc] | 37 |     <para os="b">Install the header files that are common to all architectures:</para>
 | 
|---|
| [3f8be484] | 38 | 
 | 
|---|
| [91f60dc] | 39 | <screen os="c"><userinput>install -dv /usr/include/{asm,asm-generic,linux,net,mtd,scsi,sound}
 | 
|---|
 | 40 | cp -av include/asm-generic/* /usr/include/asm-generic
 | 
|---|
| [2df03f3] | 41 | cp -av include/linux/* /usr/include/linux
 | 
|---|
 | 42 | cp -av include/mtd/* /usr/include/mtd
 | 
|---|
| [f097f3e] | 43 | cp -av include/net/* /usr/include/net
 | 
|---|
 | 44 | cp -av include/scsi/* /usr/include/scsi
 | 
|---|
 | 45 | cp -av include/sound/* /usr/include/sound</userinput></screen>
 | 
|---|
| [3f8be484] | 46 | 
 | 
|---|
| [91f60dc] | 47 |     <para os="d">Install the header files that are specific to this architecture:</para>
 | 
|---|
 | 48 | 
 | 
|---|
 | 49 | <screen><userinput>cp -av include/asm-i386/* /usr/include/asm</userinput></screen>
 | 
|---|
 | 50 | 
 | 
|---|
 | 51 |     <para os="e">Ensure that all the headers are owned by
 | 
|---|
| [3f8be484] | 52 |     <systemitem class="username">root</systemitem>:</para>
 | 
|---|
 | 53 | 
 | 
|---|
| [f8f8bd0] | 54 | <screen os="f"><userinput>chown -Rv root:root /usr/include/{asm,asm-generic,linux,mtd,net,scsi,sound}</userinput></screen>
 | 
|---|
| [3f8be484] | 55 | 
 | 
|---|
| [91f60dc] | 56 |     <para os="g">Make sure the users can read the headers:</para>
 | 
|---|
| [3f8be484] | 57 | 
 | 
|---|
| [e75365c] | 58 | <screen os="h"><userinput>find /usr/include/{asm,asm-generic,linux,mtd,net,scsi,sound} -type d -exec chmod -v 755 {} \;
 | 
|---|
| [91f60dc] | 59 | find /usr/include/{asm,asm-generic,linux,mtd,net,scsi,sound} -type f -exec chmod -v 644 {} \;</userinput></screen>
 | 
|---|
| [3f8be484] | 60 | 
 | 
|---|
 | 61 |   </sect2>
 | 
|---|
 | 62 | 
 | 
|---|
| [f097f3e] | 63 |   <sect2 id="contents-linux-headers" role="content">
 | 
|---|
 | 64 |     <title>Contents of Linux-Headers</title>
 | 
|---|
| [3f8be484] | 65 | 
 | 
|---|
 | 66 |     <segmentedlist>
 | 
|---|
 | 67 |       <segtitle>Installed headers</segtitle>
 | 
|---|
 | 68 | 
 | 
|---|
 | 69 |       <seglistitem>
 | 
|---|
 | 70 |         <seg>/usr/include/{asm,linux}/*.h</seg>
 | 
|---|
 | 71 |       </seglistitem>
 | 
|---|
 | 72 |     </segmentedlist>
 | 
|---|
 | 73 | 
 | 
|---|
 | 74 |     <variablelist>
 | 
|---|
 | 75 |       <bridgehead renderas="sect3">Short Descriptions</bridgehead>
 | 
|---|
 | 76 |       <?dbfo list-presentation="list"?>
 | 
|---|
 | 77 |       <?dbhtml list-presentation="table"?>
 | 
|---|
 | 78 | 
 | 
|---|
| [f097f3e] | 79 |       <varlistentry id="linux-headers">
 | 
|---|
| [3f8be484] | 80 |         <term><filename
 | 
|---|
 | 81 |         class="headerfile">/usr/include/{asm,linux}/*.h</filename></term>
 | 
|---|
 | 82 |         <listitem>
 | 
|---|
 | 83 |           <para>The Linux API headers</para>
 | 
|---|
| [f097f3e] | 84 |           <indexterm zone="ch-system-linux-headers linux-headers">
 | 
|---|
| [3f8be484] | 85 |             <primary
 | 
|---|
 | 86 |             sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary>
 | 
|---|
 | 87 |           </indexterm>
 | 
|---|
 | 88 |         </listitem>
 | 
|---|
 | 89 |       </varlistentry>
 | 
|---|
 | 90 | 
 | 
|---|
 | 91 |     </variablelist>
 | 
|---|
 | 92 | 
 | 
|---|
 | 93 |   </sect2>
 | 
|---|
 | 94 | 
 | 
|---|
 | 95 | </sect1>
 | 
|---|