Changeset 5bc82c5 for chapter06/linux-headers.xml
- Timestamp:
- 10/04/2006 05:15:25 PM (18 years ago)
- Branches:
- 10.0, 10.0-rc1, 10.1, 10.1-rc1, 11.0, 11.0-rc1, 11.0-rc2, 11.0-rc3, 11.1, 11.1-rc1, 11.2, 11.2-rc1, 11.3, 11.3-rc1, 12.0, 12.0-rc1, 12.1, 12.1-rc1, 6.3, 6.4, 6.5, 6.6, 6.7, 6.8, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 7.5-systemd, 7.6, 7.6-systemd, 7.7, 7.7-systemd, 7.8, 7.8-systemd, 7.9, 7.9-systemd, 8.0, 8.1, 8.2, 8.3, 8.4, 9.0, 9.1, arm, bdubbs/gcc13, ml-11.0, multilib, renodr/libudev-from-systemd, s6-init, trunk, xry111/arm64, xry111/arm64-12.0, xry111/clfs-ng, xry111/lfs-next, xry111/loongarch, xry111/loongarch-12.0, xry111/loongarch-12.1, xry111/mips64el, xry111/pip3, xry111/rust-wip-20221008, xry111/update-glibc
- Children:
- 49451499
- Parents:
- 93bc4a2
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
chapter06/linux-headers.xml
r93bc4a2 r5bc82c5 6 6 ]> 7 7 8 <sect1 id="ch-system-linux- libc-headers" role="wrap">9 <?dbhtml filename="linux- libc-headers.html"?>8 <sect1 id="ch-system-linux-headers" role="wrap"> 9 <?dbhtml filename="linux-headers.html"?> 10 10 11 <title>Linux- Libc-Headers-&linux-libc-headers-version;</title>11 <title>Linux-Headers-&linux-version;</title> 12 12 13 <indexterm zone="ch-system-linux- libc-headers">14 <primary sortas="a-Linux- Libc-Headers">Linux-Libc-Headers</primary>13 <indexterm zone="ch-system-linux-headers"> 14 <primary sortas="a-Linux-Headers">Linux-Headers</primary> 15 15 </indexterm> 16 16 … … 18 18 <title/> 19 19 20 <para>The Linux-Libc-Headers package contains the 21 <quote>sanitized</quote> kernel headers.</para> 20 <para>The Linux-Headers expose the kernel's API for use by Glibc.</para> 22 21 23 22 <segmentedlist> … … 26 25 27 26 <seglistitem> 28 <seg>&linux- libc-headers-ch6-sbu;</seg>29 <seg>&linux- libc-headers-ch6-du;</seg>27 <seg>&linux-headers-ch6-sbu;</seg> 28 <seg>&linux-headers-ch6-du;</seg> 30 29 </seglistitem> 31 30 </segmentedlist> … … 34 33 35 34 <sect2 role="installation"> 36 <title>Installation of Linux- Libc-Headers</title>35 <title>Installation of Linux-Headers</title> 37 36 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> 37 <para>The Linux kernel needs to expose an Application Programming Interface 38 (API) for the system's C library (Glibc in LFS) to utilize. This is done 39 by way of sanitizing various C header files that are shipped in the Linux 40 kernel source tarball.</para> 45 41 46 <para>A dd a userspace header and syscall support for the inotify feature47 available in newer Linux kernels:</para>42 <para>Apply the following patch to provide <command>unifdef</command>, which 43 the installation of the kernel headers requires:</para> 48 44 49 <screen><userinput>patch -Np1 -i ../ &linux-inotify-patch;</userinput></screen>45 <screen><userinput>patch -Np1 -i ../linux-&linux-version;-unifdef-1.patch</userinput></screen> 50 46 51 47 <para>Install the header files:</para> 52 48 53 <screen><userinput> install -dv /usr/include/asm54 cp -Rv include/asm-i386/* /usr/include/asm 55 cp -Rv include/linux /usr/include</userinput></screen>49 <screen><userinput>make mrproper 50 make headers_check 51 make INSTALL_HDR_PATH=/usr headers_install</userinput></screen> 56 52 57 53 <para>Ensure that all the headers are owned by root:</para> … … 66 62 </sect2> 67 63 68 <sect2 id="contents-linux- libc-headers" role="content">69 <title>Contents of Linux- Libc-Headers</title>64 <sect2 id="contents-linux-headers" role="content"> 65 <title>Contents of Linux-Headers</title> 70 66 71 67 <segmentedlist> … … 82 78 <?dbhtml list-presentation="table"?> 83 79 84 <varlistentry id="linux- libc-headers">80 <varlistentry id="linux-headers"> 85 81 <term><filename class="headerfile">/usr/include/{asm,linux}/*.h</filename></term> 86 82 <listitem> 87 83 <para>The Linux API headers</para> 88 <indexterm zone="ch-system-linux- libc-headers linux-libc-headers">84 <indexterm zone="ch-system-linux-headers linux-headers"> 89 85 <primary sortas="e-/usr/include/{asm,linux}/*.h">/usr/include/{asm,linux}/*.h</primary> 90 86 </indexterm>
Note:
See TracChangeset
for help on using the changeset viewer.