mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-01-31 03:11:57 +00:00
Rename the Linux Libc Headers pages
git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@7817 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
93bc4a2875
commit
5bc82c5b16
69
chapter05/linux-headers.xml
Normal file
69
chapter05/linux-headers.xml
Normal file
@ -0,0 +1,69 @@
|
|||||||
|
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||||||
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
||||||
|
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
||||||
|
<!ENTITY % general-entities SYSTEM "../general.ent">
|
||||||
|
%general-entities;
|
||||||
|
]>
|
||||||
|
|
||||||
|
<sect1 id="ch-tools-linux-headers" role="wrap">
|
||||||
|
<?dbhtml filename="linux-headers.html"?>
|
||||||
|
|
||||||
|
<title>Linux-Headers-&linux-version;</title>
|
||||||
|
|
||||||
|
<indexterm zone="ch-tools-linux-headers">
|
||||||
|
<primary sortas="a-Linux-Headers">Linux-Headers</primary>
|
||||||
|
<secondary>tools, headers</secondary>
|
||||||
|
</indexterm>
|
||||||
|
|
||||||
|
<sect2 role="package">
|
||||||
|
<title/>
|
||||||
|
|
||||||
|
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
|
||||||
|
href="../chapter06/linux-headers.xml"
|
||||||
|
xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
|
||||||
|
|
||||||
|
<segmentedlist>
|
||||||
|
<segtitle>&buildtime;</segtitle>
|
||||||
|
<segtitle>&diskspace;</segtitle>
|
||||||
|
|
||||||
|
<seglistitem>
|
||||||
|
<seg>&linux-headers-ch5-sbu;</seg>
|
||||||
|
<seg>&linux-headers-ch5-du;</seg>
|
||||||
|
</seglistitem>
|
||||||
|
</segmentedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 role="installation">
|
||||||
|
<title>Installation of Linux-Headers</title>
|
||||||
|
|
||||||
|
<para>The Linux kernel needs to expose an Application Programming Interface
|
||||||
|
(API) for the system's C library (Glibc in LFS) to utilize. This is done
|
||||||
|
by way of sanitizing various C header files that are shipped in the Linux
|
||||||
|
kernel source tarball.</para>
|
||||||
|
|
||||||
|
<para>Apply the following patch to provide <command>unifdef</command>, which
|
||||||
|
the installation of the kernel headers requires:</para>
|
||||||
|
|
||||||
|
<screen><userinput>patch -Np1 -i ../linux-&linux-version;-unifdef-1.patch</userinput></screen>
|
||||||
|
|
||||||
|
<para>Install the header files:</para>
|
||||||
|
|
||||||
|
<screen><userinput>mkdir /tools/tmp
|
||||||
|
make mrproper
|
||||||
|
make headers_check
|
||||||
|
make INSTALL_HDR_PATH=/tools/tmp headers_install
|
||||||
|
cp -R /tools/tmp/include/* /tools/include
|
||||||
|
rm -r /tools/tmp</userinput></screen>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2 role="content">
|
||||||
|
<title/>
|
||||||
|
|
||||||
|
<para>Details on this package are located in
|
||||||
|
<xref linkend="contents-linux-headers" role="."/></para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
</sect1>
|
@ -1,66 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
||||||
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
|
|
||||||
"http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
|
|
||||||
<!ENTITY % general-entities SYSTEM "../general.ent">
|
|
||||||
%general-entities;
|
|
||||||
]>
|
|
||||||
|
|
||||||
<sect1 id="ch-tools-linux-libc-headers" role="wrap">
|
|
||||||
<?dbhtml filename="linux-libc-headers.html"?>
|
|
||||||
|
|
||||||
<title>Linux-Libc-Headers-&linux-libc-headers-version;</title>
|
|
||||||
|
|
||||||
<indexterm zone="ch-tools-linux-libc-headers">
|
|
||||||
<primary sortas="a-Linux-Libc-Headers">Linux-Libc-Headers</primary>
|
|
||||||
<secondary>tools, headers</secondary>
|
|
||||||
</indexterm>
|
|
||||||
|
|
||||||
<sect2 role="package">
|
|
||||||
<title/>
|
|
||||||
|
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2003/XInclude"
|
|
||||||
href="../chapter06/linux-libc-headers.xml"
|
|
||||||
xpointer="xpointer(/sect1/sect2[1]/para[1])"/>
|
|
||||||
|
|
||||||
<segmentedlist>
|
|
||||||
<segtitle>&buildtime;</segtitle>
|
|
||||||
<segtitle>&diskspace;</segtitle>
|
|
||||||
|
|
||||||
<seglistitem>
|
|
||||||
<seg>&linux-libc-headers-ch5-sbu;</seg>
|
|
||||||
<seg>&linux-libc-headers-ch5-du;</seg>
|
|
||||||
</seglistitem>
|
|
||||||
</segmentedlist>
|
|
||||||
|
|
||||||
</sect2>
|
|
||||||
|
|
||||||
<sect2 role="installation">
|
|
||||||
<title>Installation of Linux-Libc-Headers</title>
|
|
||||||
|
|
||||||
<para>For years it has been common practice to use <quote>raw</quote>
|
|
||||||
kernel headers (straight from a kernel tarball) in <filename
|
|
||||||
class="directory">/usr/include</filename>, but over the last few years,
|
|
||||||
the kernel developers have taken a strong stance that this should not
|
|
||||||
be done. This gave birth to the Linux-Libc-Headers Project, which was
|
|
||||||
designed to maintain an Application Programming Interface (API) stable
|
|
||||||
version of the Linux headers.</para>
|
|
||||||
|
|
||||||
<para>Install the header files:</para>
|
|
||||||
|
|
||||||
<screen><userinput>cp -Rv include/asm-i386 /tools/include/asm
|
|
||||||
cp -Rv include/linux /tools/include</userinput></screen>
|
|
||||||
|
|
||||||
<para>If your architecture is not i386 (compatible), adjust the first command
|
|
||||||
accordingly.</para>
|
|
||||||
|
|
||||||
</sect2>
|
|
||||||
|
|
||||||
<sect2 role="content">
|
|
||||||
<title/>
|
|
||||||
|
|
||||||
<para>Details on this package are located in
|
|
||||||
<xref linkend="contents-linux-libc-headers" role="."/></para>
|
|
||||||
|
|
||||||
</sect2>
|
|
||||||
|
|
||||||
</sect1>
|
|
@ -5,54 +5,50 @@
|
|||||||
%general-entities;
|
%general-entities;
|
||||||
]>
|
]>
|
||||||
|
|
||||||
<sect1 id="ch-system-linux-libc-headers" role="wrap">
|
<sect1 id="ch-system-linux-headers" role="wrap">
|
||||||
<?dbhtml filename="linux-libc-headers.html"?>
|
<?dbhtml filename="linux-headers.html"?>
|
||||||
|
|
||||||
<title>Linux-Libc-Headers-&linux-libc-headers-version;</title>
|
<title>Linux-Headers-&linux-version;</title>
|
||||||
|
|
||||||
<indexterm zone="ch-system-linux-libc-headers">
|
<indexterm zone="ch-system-linux-headers">
|
||||||
<primary sortas="a-Linux-Libc-Headers">Linux-Libc-Headers</primary>
|
<primary sortas="a-Linux-Headers">Linux-Headers</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
|
|
||||||
<sect2 role="package">
|
<sect2 role="package">
|
||||||
<title/>
|
<title/>
|
||||||
|
|
||||||
<para>The Linux-Libc-Headers package contains the
|
<para>The Linux-Headers expose the kernel's API for use by Glibc.</para>
|
||||||
<quote>sanitized</quote> kernel headers.</para>
|
|
||||||
|
|
||||||
<segmentedlist>
|
<segmentedlist>
|
||||||
<segtitle>&buildtime;</segtitle>
|
<segtitle>&buildtime;</segtitle>
|
||||||
<segtitle>&diskspace;</segtitle>
|
<segtitle>&diskspace;</segtitle>
|
||||||
|
|
||||||
<seglistitem>
|
<seglistitem>
|
||||||
<seg>&linux-libc-headers-ch6-sbu;</seg>
|
<seg>&linux-headers-ch6-sbu;</seg>
|
||||||
<seg>&linux-libc-headers-ch6-du;</seg>
|
<seg>&linux-headers-ch6-du;</seg>
|
||||||
</seglistitem>
|
</seglistitem>
|
||||||
</segmentedlist>
|
</segmentedlist>
|
||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 role="installation">
|
<sect2 role="installation">
|
||||||
<title>Installation of Linux-Libc-Headers</title>
|
<title>Installation of Linux-Headers</title>
|
||||||
|
|
||||||
<para>For years it has been common practice to use <quote>raw</quote>
|
<para>The Linux kernel needs to expose an Application Programming Interface
|
||||||
kernel headers (straight from a kernel tarball) in <filename
|
(API) for the system's C library (Glibc in LFS) to utilize. This is done
|
||||||
class="directory">/usr/include</filename>, but over the last few
|
by way of sanitizing various C header files that are shipped in the Linux
|
||||||
years, the kernel developers have taken a strong stance that this
|
kernel source tarball.</para>
|
||||||
should not be done. This gave birth to the Linux-Libc-Headers Project,
|
|
||||||
which was designed to maintain an API stable version of the Linux
|
|
||||||
headers.</para>
|
|
||||||
|
|
||||||
<para>Add a userspace header and syscall support for the inotify feature
|
<para>Apply the following patch to provide <command>unifdef</command>, which
|
||||||
available in newer Linux kernels:</para>
|
the installation of the kernel headers requires:</para>
|
||||||
|
|
||||||
<screen><userinput>patch -Np1 -i ../&linux-inotify-patch;</userinput></screen>
|
<screen><userinput>patch -Np1 -i ../linux-&linux-version;-unifdef-1.patch</userinput></screen>
|
||||||
|
|
||||||
<para>Install the header files:</para>
|
<para>Install the header files:</para>
|
||||||
|
|
||||||
<screen><userinput>install -dv /usr/include/asm
|
<screen><userinput>make mrproper
|
||||||
cp -Rv include/asm-i386/* /usr/include/asm
|
make headers_check
|
||||||
cp -Rv include/linux /usr/include</userinput></screen>
|
make INSTALL_HDR_PATH=/usr headers_install</userinput></screen>
|
||||||
|
|
||||||
<para>Ensure that all the headers are owned by root:</para>
|
<para>Ensure that all the headers are owned by root:</para>
|
||||||
|
|
||||||
@ -65,8 +61,8 @@ find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;</userinput></scre
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 id="contents-linux-libc-headers" role="content">
|
<sect2 id="contents-linux-headers" role="content">
|
||||||
<title>Contents of Linux-Libc-Headers</title>
|
<title>Contents of Linux-Headers</title>
|
||||||
|
|
||||||
<segmentedlist>
|
<segmentedlist>
|
||||||
<segtitle>Installed headers</segtitle>
|
<segtitle>Installed headers</segtitle>
|
||||||
@ -81,11 +77,11 @@ find /usr/include/{asm,linux} -type f -exec chmod -v 644 {} \;</userinput></scre
|
|||||||
<?dbfo list-presentation="list"?>
|
<?dbfo list-presentation="list"?>
|
||||||
<?dbhtml list-presentation="table"?>
|
<?dbhtml list-presentation="table"?>
|
||||||
|
|
||||||
<varlistentry id="linux-libc-headers">
|
<varlistentry id="linux-headers">
|
||||||
<term><filename class="headerfile">/usr/include/{asm,linux}/*.h</filename></term>
|
<term><filename class="headerfile">/usr/include/{asm,linux}/*.h</filename></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>The Linux API headers</para>
|
<para>The Linux API headers</para>
|
||||||
<indexterm zone="ch-system-linux-libc-headers linux-libc-headers">
|
<indexterm zone="ch-system-linux-headers linux-headers">
|
||||||
<primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary>
|
<primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary>
|
||||||
</indexterm>
|
</indexterm>
|
||||||
</listitem>
|
</listitem>
|
Loading…
Reference in New Issue
Block a user