source: clfs-sysroot/BOOK/cross-tools/arm/linux-headers.xml @ 11462e6

Last change on this file since 11462e6 was 11462e6, checked in by Joe Ciccone <jciccone@…>, 11 years ago

Add command explanations to linux-headers as well as a command to clean up what's installed.

  • Property mode set to 100644
File size: 3.3 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4  <!ENTITY % general-entities SYSTEM "../../general.ent">
5  %general-entities;
6]>
7
8<sect1 id="ch-cross-tools-linux-headers" role="wrap">
9  <?dbhtml filename="linux-headers.html"?>
10
11  <title>Linux-Headers-&linux-version;</title>
12
13  <indexterm zone="ch-cross-tools-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 Kernel contains a make target that installs
21    <quote>sanitized</quote> kernel headers.</para>
22
23  </sect2>
24
25  <sect2 role="installation">
26    <title>Installation of Linux-Headers</title>
27
28    <para os="a">For this step you will need the kernel tarball.</para>
29
30    <para os="b">Install the kernel header files:</para>
31
32<screen os="c"><userinput>make mrproper
33make ARCH=arm headers_check
34make ARCH=arm INSTALL_HDR_PATH=dest headers_install
35cp -rv dest/include/* ${CLFS}/usr/include
36find ${CLFS}/usr/include -name .install -or -name ..install.cmd | xargs rm -fv</userinput></screen>
37
38    <variablelist os="d">
39      <title>The meaning of the make commands:</title>
40
41      <varlistentry os="d1">
42        <term><parameter>make mrproper</parameter></term>
43        <listitem>
44          <para>Ensures that the kernel source dir is clean.</para>
45        </listitem>
46      </varlistentry>
47
48      <varlistentry os="d2">
49        <term><parameter>make ARCH=<replaceable>[arch]</replaceable> headers_check</parameter></term>
50        <listitem>
51          <para>Sanitizes the raw kernel headers so that they can be used
52          by userspace programs.</para>
53        </listitem>
54      </varlistentry>
55
56      <varlistentry os="d3">
57        <term><parameter>make ARCH=<replaceable>[arch]</replaceable> INSTALL_HDR_PATH=dest headers_install</parameter></term>
58        <listitem>
59          <para>Normally the headers_install target removes the entire
60          destination directory (default
61          <filename class="directory">/usr/include</filename>) before
62          installing the headers. To prevent this, we tell the kernel to
63          install the headers to a directory inside the source dir.</para>
64        </listitem>
65      </varlistentry>
66
67    </variablelist>
68
69  </sect2>
70
71  <sect2 id="contents-linux-headers" role="content">
72    <title>Contents of Linux-Headers</title>
73
74    <segmentedlist>
75      <segtitle>Installed headers</segtitle>
76
77      <seglistitem>
78        <seg>/usr/include/{asm,asm-generic,drm,linux,mtd,rdma,sound,video}/*.h</seg>
79      </seglistitem>
80    </segmentedlist>
81
82    <variablelist>
83      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
84      <?dbfo list-presentation="list"?>
85      <?dbhtml list-presentation="table"?>
86
87      <varlistentry id="linux-headers">
88        <term><filename
89        class="headerfile">/usr/include/{asm,asm-generic,drm,linux,mtd,rdma,sound,video}/*.h</filename></term>
90        <listitem>
91          <para>The Linux API headers</para>
92          <indexterm zone="ch-cross-tools-linux-headers linux-headers">
93            <primary
94            sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary>
95          </indexterm>
96        </listitem>
97      </varlistentry>
98
99    </variablelist>
100
101  </sect2>
102
103</sect1>
Note: See TracBrowser for help on using the repository browser.