1
0

linux-libc-headers.xml 3.1 KB

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