hostreqs.xml 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  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. <sect1 id="pre-hostreqs">
  8. <?dbhtml filename="hostreqs.html"?>
  9. <title>Host System Requirements</title>
  10. <para>Your host system should have the following software with the
  11. minimum versions indicated. This should not be an issue for most
  12. modern Linux distributions. Also note that many distributions will
  13. place software headers into separate packages, often in the form of
  14. <quote>&lt;package-name&gt;-devel</quote> or
  15. <quote>&lt;package-name&gt;-dev</quote>. Be sure to install those if
  16. your distribution provides them.</para>
  17. <itemizedlist spacing="compact">
  18. <listitem>
  19. <para><emphasis role="strong">Bash-2.05a</emphasis></para>
  20. </listitem>
  21. <listitem>
  22. <para><emphasis role="strong">Binutils-2.12</emphasis> (Versions
  23. greater than &binutils-version; are not recommended as they have
  24. not been tested)</para>
  25. </listitem>
  26. <listitem>
  27. <para><emphasis role="strong">Bison-1.875</emphasis></para>
  28. </listitem>
  29. <listitem>
  30. <para><emphasis role="strong">Bzip2-1.0.2</emphasis></para>
  31. </listitem>
  32. <listitem>
  33. <para><emphasis role="strong">Coreutils-5.0</emphasis> (or Sh-Utils-2.0,
  34. Textutils-2.0, and Fileutils-4.1)</para>
  35. </listitem>
  36. <listitem>
  37. <para><emphasis role="strong">Diffutils-2.8</emphasis></para>
  38. </listitem>
  39. <listitem>
  40. <para><emphasis role="strong">Findutils-4.1.20</emphasis></para>
  41. </listitem>
  42. <listitem>
  43. <para><emphasis role="strong">Gawk-3.0</emphasis></para>
  44. </listitem>
  45. <listitem>
  46. <!-- Gcc-2.95.3 breaks feature tests when using CC="gcc -B/usr/bin/"
  47. in the *-pass1 sections -->
  48. <para><emphasis role="strong">Gcc-3.0.1</emphasis> (Versions
  49. greater than &gcc-version; are not recommended as they have not
  50. been tested)</para>
  51. </listitem>
  52. <listitem>
  53. <para><emphasis role="strong">Glibc-2.2.5</emphasis> (Versions
  54. greater than &glibc-version; are not recommended as they have
  55. not been tested)</para>
  56. </listitem>
  57. <listitem>
  58. <para><emphasis role="strong">Grep-2.5</emphasis></para>
  59. </listitem>
  60. <listitem>
  61. <para><emphasis role="strong">Gzip-1.2.4</emphasis></para>
  62. </listitem>
  63. <listitem>
  64. <para><emphasis role="strong">Linux Kernel-2.6.x</emphasis>
  65. (having been compiled with GCC-3.0 or greater)</para>
  66. <para>The reason for the kernel version requirement is that thread-local
  67. storage support in Binutils will not be built and the Native POSIX
  68. Threading Library (NPTL) test suite will segfault if the host's kernel
  69. isn't at least a 2.6.x version compiled with a 3.0 or later release of
  70. GCC.</para>
  71. <para>If the host kernel is either earlier than 2.6.x, or it was not
  72. compiled using a GCC-3.0 (or later) compiler, you will have to replace
  73. the kernel with one adhering to the specifications. There are two methods
  74. you can take to solve this. First, see if your Linux vendor provides a
  75. 2.6 kernel package. If so, you may wish to install it. If your vendor
  76. doesn't offer a 2.6 kernel package, or you would prefer not to install it,
  77. then you can compile a 2.6 kernel yourself. Instructions for compiling the
  78. kernel and configuring the boot loader (assuming the host uses GRUB) are
  79. located in <xref linkend="chapter-bootable"/>.</para>
  80. </listitem>
  81. <listitem>
  82. <para><emphasis role="strong">Make-3.79.1</emphasis></para>
  83. </listitem>
  84. <listitem>
  85. <para><emphasis role="strong">Patch-2.5.4</emphasis></para>
  86. </listitem>
  87. <listitem>
  88. <para><emphasis role="strong">Sed-3.0.2</emphasis></para>
  89. </listitem>
  90. <listitem>
  91. <para><emphasis role="strong">Tar-1.14</emphasis></para>
  92. </listitem>
  93. </itemizedlist>
  94. <para>To see whether your host system has all the appropriate versions, run the following:</para>
  95. <screen role="nodump"><userinput>cat &gt; version-check.sh &lt;&lt; "EOF"
  96. <literal>#!/bin/bash
  97. # Simple script to list version numbers of critical development tools
  98. bash --version | head -n1 | cut -d" " -f2-4
  99. echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-4
  100. bison --version | head -n1
  101. bzip2 --version 2&gt;&amp;1 &lt; /dev/null | head -n1 | cut -d" " -f1,6-
  102. echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
  103. diff --version | head -n1
  104. find --version | head -n1
  105. gawk --version | head -n1
  106. gcc --version | head -n1
  107. /lib/libc.so.6 | head -n1 | cut -d" " -f1-7
  108. grep --version | head -n1
  109. gzip --version | head -n1
  110. cat /proc/version
  111. make --version | head -n1
  112. patch --version | head -n1
  113. sed --version | head -n1
  114. tar --version | head -n1</literal>
  115. EOF
  116. bash version-check.sh</userinput></screen>
  117. </sect1>