- Timestamp:
- 01/20/2006 09:03:20 PM (19 years ago)
- Children:
- d1ae0cb
- Parents:
- f658b21
- Location:
- chapter05
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter05/gcc-pass1.xml
rf658b21 rd096eb1 1 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" 3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 3 4 <!ENTITY % general-entities SYSTEM "../general.ent"> 4 5 %general-entities; 5 6 ]> 7 6 8 <sect1 id="ch-tools-gcc-pass1" role="wrap"> 7 <title>GCC-&gcc-version; - Pass 1</title> 8 <?dbhtml filename="gcc-pass1.html"?> 9 <?dbhtml filename="gcc-pass1.html"?> 9 10 10 <indexterm zone="ch-tools-gcc-pass1"> 11 <primary sortas="a-GCC">GCC</primary> 12 <secondary>tools, pass 1</secondary></indexterm> 11 <title>GCC-&gcc-version; - Pass 1</title> 13 12 14 <sect2 role="package"><title/> 15 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gcc.xml" xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 13 <indexterm zone="ch-tools-gcc-pass1"> 14 <primary sortas="a-GCC">GCC</primary> 15 <secondary>tools, pass 1</secondary> 16 </indexterm> 16 17 17 <segmentedlist> 18 <segtitle>&buildtime;</segtitle> 19 <segtitle>&diskspace;</segtitle> 20 <seglistitem><seg>4.4 SBU</seg><seg>219 MB</seg></seglistitem> 21 </segmentedlist> 18 <sect2 role="package"> 19 <title/> 22 20 23 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gcc.xml" xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 21 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 22 href="../chapter06/gcc.xml" 23 xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 24 24 25 </sect2> 25 <segmentedlist> 26 <segtitle>&buildtime;</segtitle> 27 <segtitle>&diskspace;</segtitle> 26 28 27 <sect2 role="installation"> 28 <title>Installation of GCC</title> 29 <seglistitem> 30 <seg>4.4 SBU</seg> 31 <seg>219 MB</seg> 32 </seglistitem> 33 </segmentedlist> 29 34 30 <para>The GCC documentation recommends building GCC outside of the 31 source directory in a dedicated build directory:</para> 35 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 36 href="../chapter06/gcc.xml" 37 xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 38 39 </sect2> 40 41 <sect2 role="installation"> 42 <title>Installation of GCC</title> 43 44 <para>The GCC documentation recommends building GCC outside of the 45 source directory in a dedicated build directory:</para> 32 46 33 47 <screen><userinput>mkdir -v ../gcc-build 34 48 cd ../gcc-build</userinput></screen> 35 49 36 <para>Prepare GCC for compilation:</para>50 <para>Prepare GCC for compilation:</para> 37 51 38 52 <screen><userinput>../gcc-&gcc-version;/configure --prefix=/tools \ … … 40 54 --enable-languages=c</userinput></screen> 41 55 42 <para>The meaning of the configure options:</para> 56 <variablelist> 57 <title>The meaning of the configure options:</title> 43 58 44 <variablelist> 45 <varlistentry> 46 <term><parameter>--with-local-prefix=/tools</parameter></term> 47 <listitem><para>The purpose of this switch is to remove <filename class="directory">/usr/local/include</filename> 48 from <command>gcc</command>'s include search path. This is not absolutely 49 essential, however, it helps to minimize the influence of the host 50 system.</para> 51 </listitem> 52 </varlistentry> 59 <varlistentry> 60 <term><parameter>--with-local-prefix=/tools</parameter></term> 61 <listitem> 62 <para>The purpose of this switch is to remove <filename 63 class="directory">/usr/local/include</filename> from 64 <command>gcc</command>'s include search path. This is not 65 absolutely essential, however, it helps to minimize the 66 influence of the host system.</para> 67 </listitem> 68 </varlistentry> 53 69 54 <varlistentry> 55 <term><parameter>--enable-shared</parameter></term> 56 <listitem><para>This switch allows the building of 57 <filename class="libraryfile">libgcc_s.so.1</filename> and 58 <filename class="libraryfile">libgcc_eh.a</filename>. Having 59 <filename class="libraryfile">libgcc_eh.a</filename> available ensures that the 60 configure script for Glibc (the next package we compile) produces the proper 61 results.</para></listitem> 62 </varlistentry> 70 <varlistentry> 71 <term><parameter>--enable-shared</parameter></term> 72 <listitem> 73 <para>This switch allows the building of <filename 74 class="libraryfile">libgcc_s.so.1</filename> and 75 <filename class="libraryfile">libgcc_eh.a</filename>. 76 Having <filename class="libraryfile">libgcc_eh.a</filename> 77 available ensures that the configure script for Glibc (the 78 next package we compile) produces the proper results.</para> 79 </listitem> 80 </varlistentry> 63 81 64 <varlistentry>65 <term><parameter>--enable-languages=c</parameter></term>66 <listitem><para>This option ensures that only the C compiler is built. 67 </para></listitem>68 </varlistentry>69 </variablelist>82 <varlistentry> 83 <term><parameter>--enable-languages=c</parameter></term> 84 <listitem> 85 <para>This option ensures that only the C compiler is built.</para> 86 </listitem> 87 </varlistentry> 70 88 71 <para>Continue with compiling the package:</para> 89 </variablelist> 90 91 <para>Continue with compiling the package:</para> 72 92 73 93 <screen><userinput>make bootstrap</userinput></screen> 74 94 75 <para>The meaning of the make parameters:</para> 95 <variablelist> 96 <title>The meaning of the make parameters:</title> 76 97 77 <variablelist>78 <varlistentry>79 <term><parameter>bootstrap</parameter></term>80 <listitem><para>This target does not just compile GCC, but compiles it81 several times. It uses the programs compiled in a first round to 82 compile itself a second time, and then again a third time. It then 83 compares these second and third compiles to make sure it can reproduce84 itself flawlessly. This also implies that it was compiled 85 correctly.</para></listitem>86 </varlistentry>87 </variablelist>98 <varlistentry> 99 <term><parameter>bootstrap</parameter></term> 100 <listitem> 101 <para>This target does not just compile GCC, but compiles it 102 several times. It uses the programs compiled in a first round 103 to compile itself a second time, and then again a third time. 104 It then compares these second and third compiles to make sure 105 it can reproduce itself flawlessly. This also implies that it 106 was compiled correctly.</para> 107 </listitem> 108 </varlistentry> 88 109 89 <para>Compilation is now complete. At this point, the test suite would 90 normally be run, but, as mentioned before, the test suite framework is 91 not in place yet. The benefits of running the tests at this point 92 are minimal since the programs from this first pass will soon be 93 replaced.</para> 110 </variablelist> 94 111 95 <para>Install the package:</para> 112 <para>Compilation is now complete. At this point, the test suite would 113 normally be run, but, as mentioned before, the test suite framework is 114 not in place yet. The benefits of running the tests at this point 115 are minimal since the programs from this first pass will soon be 116 replaced.</para> 117 118 <para>Install the package:</para> 96 119 97 120 <screen><userinput>make install</userinput></screen> 98 121 99 <para>As a finishing touch, create a symlink. Many programs and 100 scripts run <command>cc</command> instead of <command>gcc</command>, which is used to keep programs generic 101 and therefore usable on all kinds of UNIX systems where the GNU C compiler 102 is not always installed. Running <command>cc</command> leaves the system administrator 103 free to decide which C compiler to install.</para> 122 <para>As a finishing touch, create a symlink. Many programs and scripts 123 run <command>cc</command> instead of <command>gcc</command>, which is 124 used to keep programs generic and therefore usable on all kinds of UNIX 125 systems where the GNU C compiler is not always installed. Running 126 <command>cc</command> leaves the system administrator free to decide 127 which C compiler to install.</para> 104 128 105 129 <screen><userinput>ln -vs gcc /tools/bin/cc</userinput></screen> 106 130 107 </sect2>131 </sect2> 108 132 109 <sect2 role="content"><title/> 110 <para>Details on this package are located in <xref 111 linkend="contents-gcc" role="."/></para> 112 </sect2> 133 <sect2 role="content"> 134 <title/> 135 136 <para>Details on this package are located in 137 <xref linkend="contents-gcc" role="."/></para> 138 139 </sect2> 113 140 114 141 </sect1> 115 -
chapter05/gcc-pass2.xml
rf658b21 rd096eb1 1 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" 3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 3 4 <!ENTITY % general-entities SYSTEM "../general.ent"> 4 5 %general-entities; 5 6 ]> 7 6 8 <sect1 id="ch-tools-gcc-pass2" role="wrap"> 7 <title>GCC-&gcc-version; - Pass 2</title> 8 <?dbhtml filename="gcc-pass2.html"?> 9 10 <indexterm zone="ch-tools-gcc-pass2"> 11 <primary sortas="a-GCC">GCC</primary> 12 <secondary>tools, pass 2</secondary></indexterm> 13 14 <sect2 role="package"><title/> 15 16 <segmentedlist> 17 <segtitle>&buildtime;</segtitle> 18 <segtitle>&diskspace;</segtitle> 19 <seglistitem><seg>11.0 SBU</seg><seg>292 MB</seg></seglistitem> 20 </segmentedlist> 21 22 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gcc.xml" xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 23 24 </sect2> 25 26 <sect2 role="installation"> 27 <title>Re-installation of GCC</title> 28 29 <para>The tools required to test GCC and Binutils—Tcl, Expect 30 and DejaGNU—are installed now. GCC and Binutils can now be 31 rebuilt, linking them against the new Glibc and testing them properly 32 (if running the test suites in this chapter). Please note that these 33 test suites are highly dependent on properly functioning PTYs which 34 are provided by the host. PTYs are most commonly implemented via the 35 <systemitem class="filesystem">devpts</systemitem> file system. Check 36 to see if the host system is set up correctly in this regard by 37 performing a quick test:</para> 9 <?dbhtml filename="gcc-pass2.html"?> 10 11 <title>GCC-&gcc-version; - Pass 2</title> 12 13 <indexterm zone="ch-tools-gcc-pass2"> 14 <primary sortas="a-GCC">GCC</primary> 15 <secondary>tools, pass 2</secondary> 16 </indexterm> 17 18 <sect2 role="package"> 19 <title/> 20 21 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 22 href="../chapter06/gcc.xml" 23 xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 24 25 <segmentedlist> 26 <segtitle>&buildtime;</segtitle> 27 <segtitle>&diskspace;</segtitle> 28 29 <seglistitem> 30 <seg>11.0 SBU</seg> 31 <seg>292 MB</seg> 32 </seglistitem> 33 </segmentedlist> 34 35 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 36 href="../chapter06/gcc.xml" 37 xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 38 39 </sect2> 40 41 <sect2 role="installation"> 42 <title>Re-installation of GCC</title> 43 44 <para>The tools required to test GCC and Binutils—Tcl, Expect 45 and DejaGNU—are installed now. GCC and Binutils can now be 46 rebuilt, linking them against the new Glibc and testing them properly 47 (if running the test suites in this chapter). Please note that these 48 test suites are highly dependent on properly functioning PTYs which 49 are provided by the host. PTYs are most commonly implemented via the 50 <systemitem class="filesystem">devpts</systemitem> file system. Check 51 to see if the host system is set up correctly in this regard by 52 performing a quick test:</para> 38 53 39 54 <screen><userinput>expect -c "spawn ls"</userinput></screen> 40 55 41 <para>The response might be:</para>42 43 <screen><computeroutput>The system has no more ptys. 56 <para>The response might be:</para> 57 58 <screen><computeroutput>The system has no more ptys. 44 59 Ask your system administrator to create more.</computeroutput></screen> 45 60 46 <para>If the above message is received, the host does not have its PTYs set up 47 properly. In this case, there is no point in running the test suites for GCC and 48 Binutils until this issue is resolved. Please consult the LFS FAQ at <ulink 49 url="&lfs-root;/lfs/faq.html#no-ptys"/> for more information on how to get PTYs 50 working.</para>51 52 <para>As previously explained in <xref linkend="ch-tools-adjusting"/>, under 53 normal circumstances the GCC <command>fixincludes</command> script is run in 54 order to fix potentially broken header files. As GCC-&gcc-version; and 55 Glibc-&glibc-version; have already been installed at this point, and their 56 respective header files are known to not require fixing, the57 <command>fixincludes</command> script is not required. As mentioned previously, 58 the script may in fact pollute the build environment by installing fixed headers 59 from the host system into GCC's private include directory. The running of the60 <command>fixincludes</command> script can be suppressed by issuing the following 61 commands:</para>61 <para>If the above message is received, the host does not have its PTYs 62 set up properly. In this case, there is no point in running the test 63 suites for GCC and Binutils until this issue is resolved. Please consult 64 the LFS FAQ at <ulink url="&lfs-root;/lfs/faq.html#no-ptys"/> for more 65 information on how to get PTYs working.</para> 66 67 <para>As previously explained in <xref linkend="ch-tools-adjusting"/>, 68 under normal circumstances the GCC <command>fixincludes</command> script 69 is run in order to fix potentially broken header files. As GCC-&gcc-version; 70 and Glibc-&glibc-version; have already been installed at this point, and 71 their respective header files are known to not require fixing, the 72 <command>fixincludes</command> script is not required. As mentioned 73 previously, the script may in fact pollute the build environment by 74 installing fixed headers from the host system into GCC's private include 75 directory. The running of the <command>fixincludes</command> script can 76 be suppressed by issuing the following commands:</para> 62 77 63 78 <screen><userinput>cp -v gcc/Makefile.in{,.orig} && 64 79 sed 's@\./fixinc\.sh@-c true@' gcc/Makefile.in.orig > gcc/Makefile.in</userinput></screen> 65 80 66 <para>The bootstrap build performed in <xref linkend="ch-tools-gcc-pass1"/>67 built GCC with the <option>-fomit-frame-pointer</option> compiler flag.68 Non-bootstrap builds omit this flag by default, so apply the following69 <command>sed</command> to use it in order to ensure consistent compiler builds. 70 </para>81 <para>The bootstrap build performed in <xref linkend="ch-tools-gcc-pass1"/> 82 built GCC with the <option>-fomit-frame-pointer</option> compiler flag. 83 Non-bootstrap builds omit this flag by default, so apply the following 84 <command>sed</command> to use it in order to ensure consistent compiler 85 builds.</para> 71 86 72 87 <screen><userinput>cp -v gcc/Makefile.in{,.tmp} && 73 88 sed 's/^XCFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in.tmp \ 74 > gcc/Makefile.in</userinput></screen> 75 76 <para>Apply the following patch to change the location of GCC's default dynamic 77 linker (typically <filename class="libraryfile">ld-linux.so.2</filename>):</para> 89 > gcc/Makefile.in</userinput></screen> 90 91 <para>Apply the following patch to change the location of GCC's default 92 dynamiclinker (typically <filename 93 class="libraryfile">ld-linux.so.2</filename>):</para> 78 94 79 95 <screen><userinput>patch -Np1 -i ../&gcc-specs-patch;</userinput></screen> 80 96 81 <para>The above patch also removes 82 <filename class="directory">/usr/include</filename> from GCC's include search 83 path. Patching now rather than adjusting the specs file after installation 84 ensures that the new dynamic linker is used during the actual build of GCC. That 85 is, all of the binaries created during the build will link against the new 86 Glibc.</para> 87 88 <important><para>The above patch is critical in ensuring a 89 successful overall build. Do not forget to apply 90 it.</para></important> 91 92 <para>Create a separate build directory again:</para> 97 <para>The above patch also removes <filename 98 class="directory">/usr/include</filename> from GCC's include search path. 99 Patching now rather than adjusting the specs file after installation 100 ensures that the new dynamic linker is used during the actual build of 101 GCC. That is, all of the binaries created during the build will link 102 against the new Glibc.</para> 103 104 <important> 105 <para>The above patch is critical in ensuring a successful overall 106 build. Do not forget to apply it.</para> 107 </important> 108 109 <para>Create a separate build directory again:</para> 93 110 94 111 <screen><userinput>mkdir -v ../gcc-build 95 112 cd ../gcc-build</userinput></screen> 96 113 97 <para>Before starting to build GCC, remember to unset any environment98 variables that override the default optimization flags.</para>99 100 <para>Now prepare GCC for compilation:</para>114 <para>Before starting to build GCC, remember to unset any environment 115 variables that override the default optimization flags.</para> 116 117 <para>Now prepare GCC for compilation:</para> 101 118 102 119 <screen><userinput>../gcc-&gcc-version;/configure --prefix=/tools \ … … 106 123 --disable-libstdcxx-pch</userinput></screen> 107 124 108 <para>The meaning of the new configure options:</para> 109 110 <variablelist> 111 <varlistentry> 112 <term><parameter>--enable-clocale=gnu</parameter></term> 113 <listitem><para>This option ensures the correct locale model is 114 selected for the C++ libraries under all circumstances. If the 115 configure script finds the <emphasis>de_DE</emphasis> locale installed, it will select the 116 correct gnu locale model. However, if the <emphasis>de_DE</emphasis> locale is not 117 installed, there is the risk of building Application Binary Interface 118 (ABI)-incompatible C++ libraries because the incorrect generic locale 119 model may be selected.</para></listitem> 120 </varlistentry> 121 122 <varlistentry> 123 <term><parameter>--enable-threads=posix</parameter></term> 124 <listitem><para>This enables C++ exception handling for multi-threaded 125 code.</para></listitem> 126 </varlistentry> 127 128 <varlistentry> 129 <term><parameter>--enable-__cxa_atexit</parameter></term> 130 <listitem><para>This option allows use of 131 <emphasis>__cxa_atexit</emphasis>, rather than 132 <emphasis>atexit</emphasis>, to register C++ destructors for local 133 statics and global objects. This option is essential for fully 134 standards-compliant handling of destructors. It also affects the C++ 135 ABI, and therefore results in C++ shared libraries and C++ programs 136 that are interoperable with other Linux 137 distributions.</para></listitem> 138 </varlistentry> 139 140 <varlistentry> 141 <term><parameter>--enable-languages=c,c++</parameter></term> 142 <listitem><para>This option 143 ensures that both the C and C++ compilers are built.</para></listitem> 144 </varlistentry> 145 146 <varlistentry> 147 <term><parameter>--disable-libstdcxx-pch</parameter></term> 148 <listitem><para>Do not build the pre-compiled header (PCH) for 149 <filename class="libraryfile">libstdc++</filename>. It takes up a lot of space, 150 and we have no use for it.</para></listitem> 151 </varlistentry> 152 </variablelist> 153 154 <para>Compile the package:</para> 125 <variablelist> 126 <title>The meaning of the new configure options:</title> 127 128 <varlistentry> 129 <term><parameter>--enable-clocale=gnu</parameter></term> 130 <listitem> 131 <para>This option ensures the correct locale model is selected 132 for the C++ libraries under all circumstances. If the configure 133 script finds the <emphasis>de_DE</emphasis> locale installed, 134 it will select the correct gnu locale model. However, if the 135 <emphasis>de_DE</emphasis> locale is not installed, there is the 136 risk of building Application Binary Interface (ABI)-incompatible 137 C++ libraries because the incorrect generic locale model may be 138 selected.</para> 139 </listitem> 140 </varlistentry> 141 142 <varlistentry> 143 <term><parameter>--enable-threads=posix</parameter></term> 144 <listitem> 145 <para>This enables C++ exception handling for multi-threaded code.</para> 146 </listitem> 147 </varlistentry> 148 149 <varlistentry> 150 <term><parameter>--enable-__cxa_atexit</parameter></term> 151 <listitem> 152 <para>This option allows use of <function>__cxa_atexit</function>, 153 rather than <function>atexit</function>, to register C++ destructors 154 for local statics and global objects. This option is essential for 155 fully standards-compliant handling of destructors. It also affects 156 the C++ ABI, and therefore results in C++ shared libraries and C++ 157 programs that are interoperable with other Linux distributions.</para> 158 </listitem> 159 </varlistentry> 160 161 <varlistentry> 162 <term><parameter>--enable-languages=c,c++</parameter></term> 163 <listitem> 164 <para>This option ensures that both the C and C++ compilers are 165 built.</para> 166 </listitem> 167 </varlistentry> 168 169 <varlistentry> 170 <term><parameter>--disable-libstdcxx-pch</parameter></term> 171 <listitem> 172 <para>Do not build the pre-compiled header (PCH) for 173 <filename class="libraryfile">libstdc++</filename>. It takes up a 174 lot of space, and we have no use for it.</para> 175 </listitem> 176 </varlistentry> 177 178 </variablelist> 179 180 <para>Compile the package:</para> 155 181 156 182 <screen><userinput>make</userinput></screen> 157 183 158 <para>There is no need to use the <parameter>bootstrap</parameter> 159 target now because the compiler being used to compile this GCC was 160 built from the exact same version of the GCC sources used 161 earlier.</para> 162 163 <para>Compilation is now complete. As previously mentioned, running 164 the test suites for the temporary tools compiled in this chapter is 165 not mandatory. To run the GCC test suite anyway, use the following 166 command:</para> 184 <para>There is no need to use the <parameter>bootstrap</parameter> target 185 now because the compiler being used to compile this GCC was built from 186 the exact same version of the GCC sources used earlier.</para> 187 188 <para>Compilation is now complete. As previously mentioned, running the test 189 suites for the temporary tools compiled in this chapter is not mandatory. 190 To run the GCC test suite anyway, use the following command:</para> 167 191 168 192 <screen><userinput>make -k check</userinput></screen> 169 193 170 <para>The <parameter>-k</parameter> flag is used to make the test suite run171 through to completion and not stop at the first failure. The GCC test172 suite is very comprehensive and is almost guaranteed to generate a few173 failures. To receive a summary of the test suite results, run:</para>174 194 <para>The <parameter>-k</parameter> flag is used to make the test suite run 195 through to completion and not stop at the first failure. The GCC test 196 suite is very comprehensive and is almost guaranteed to generate a few 197 failures. To receive a summary of the test suite results, run:</para> 198 175 199 <screen><userinput>../gcc-&gcc-version;/contrib/test_summary</userinput></screen> 176 200 177 <para>For only the summaries, pipe the output through178 <userinput>grep -A7 Summ</userinput>.</para>179 180 <para>Results can be compared with those located at <ulink181 url="&test-results;"/>.</para>182 183 <para>A few unexpected failures cannot always be avoided. The GCC developers are 184 usually aware of these issues, but have not resolved them yet. In particular, 185 the <filename class="libraryfile">libmudflap</filename> tests are known be 186 particularly problematic as a result of a bug in GCC (<ulink 187 url="http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20003"/>). Unless the test 188 results are vastly different from those at the above URL, it is safe to 189 continue.</para>190 191 <para>Install the package:</para>201 <para>For only the summaries, pipe the output through 202 <userinput>grep -A7 Summ</userinput>.</para> 203 204 <para>Results can be compared with those located at <ulink 205 url="&test-results;"/>.</para> 206 207 <para>A few unexpected failures cannot always be avoided. The GCC developers 208 are usually aware of these issues, but have not resolved them yet. In 209 particular, the <filename class="libraryfile">libmudflap</filename> tests 210 are known be particularly problematic as a result of a bug in GCC 211 (<ulink url="http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20003"/>). 212 Unless the test results are vastly different from those at the above URL, 213 it is safe to continue.</para> 214 215 <para>Install the package:</para> 192 216 193 217 <screen><userinput>make install</userinput></screen> 194 218 195 <note><para>At this point it is strongly recommended to repeat the 196 sanity check we performed earlier in this chapter. Refer back to <xref 197 linkend="ch-tools-adjusting" role=","/> and repeat the test compilation. If 198 the result is wrong, the most likely reason is that the GCC Specs 199 patch was not properly applied.</para></note> 200 201 </sect2> 202 203 <sect2 role="content"><title/> 204 <para>Details on this package are located in <xref 205 linkend="contents-gcc" role="."/></para> 206 </sect2> 219 <note> 220 <para>At this point it is strongly recommended to repeat the sanity 221 check we performed earlier in this chapter. Refer back to <xref 222 linkend="ch-tools-adjusting" role=","/> and repeat the test compilation. 223 If the result is wrong, the most likely reason is that the GCC Specs 224 patch was not properly applied.</para> 225 </note> 226 227 </sect2> 228 229 <sect2 role="content"> 230 <title/> 231 232 <para>Details on this package are located in 233 <xref linkend="contents-gcc" role="."/></para> 234 235 </sect2> 207 236 208 237 </sect1> 209 -
chapter05/gettext.xml
rf658b21 rd096eb1 1 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" 3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 3 4 <!ENTITY % general-entities SYSTEM "../general.ent"> 4 5 %general-entities; 5 6 ]> 7 6 8 <sect1 id="ch-tools-gettext" role="wrap"> 7 <title>Gettext-&gettext-version;</title> 8 <?dbhtml filename="gettext.html"?> 9 <?dbhtml filename="gettext.html"?> 9 10 10 <indexterm zone="ch-tools-gettext"> 11 <primary sortas="a-Gettext">Gettext</primary> 12 <secondary>tools</secondary></indexterm> 11 <title>Gettext-&gettext-version;</title> 13 12 14 <sect2 role="package"><title/> 15 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gettext.xml" xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 13 <indexterm zone="ch-tools-gettext"> 14 <primary sortas="a-Gettext">Gettext</primary> 15 <secondary>tools</secondary> 16 </indexterm> 16 17 17 <segmentedlist> 18 <segtitle>&buildtime;</segtitle> 19 <segtitle>&diskspace;</segtitle> 20 <seglistitem><seg>0.5 SBU</seg><seg>63.0 MB</seg></seglistitem> 21 </segmentedlist> 18 <sect2 role="package"> 19 <title/> 22 20 23 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gettext.xml" xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 21 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 22 href="../chapter06/gettext.xml" 23 xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 24 24 25 </sect2> 25 <segmentedlist> 26 <segtitle>&buildtime;</segtitle> 27 <segtitle>&diskspace;</segtitle> 26 28 27 <sect2 role="installation"> 28 <title>Installation of Gettext</title> 29 <seglistitem> 30 <seg>0.5 SBU</seg> 31 <seg>63.0 MB</seg> 32 </seglistitem> 33 </segmentedlist> 29 34 30 <para>For our temporary set of tools, we only need to build and install one binary from Gettext.</para> 35 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 36 href="../chapter06/gettext.xml" 37 xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 31 38 32 <para>Prepare Gettext for compilation:</para> 39 </sect2> 40 41 <sect2 role="installation"> 42 <title>Installation of Gettext</title> 43 44 <para>For our temporary set of tools, we only need to build and install 45 one binary from Gettext.</para> 46 47 <para>Prepare Gettext for compilation:</para> 33 48 34 49 <screen><userinput>cd gettext-tools 35 50 ./configure --prefix=/tools --disable-shared</userinput></screen> 36 51 37 <para>The meaning of the configure options:</para> 52 <variablelist> 53 <title>The meaning of the configure options:</title> 38 54 39 <variablelist>40 <varlistentry>41 <term><parameter>--disable-shared</parameter></term>42 <listitem><para>We do not need to install any of the shared gettext libraries at43 this time, therefore there is no need to build them.</para></listitem>44 </varlistentry>45 </variablelist>55 <varlistentry> 56 <term><parameter>--disable-shared</parameter></term> 57 <listitem> 58 <para>We do not need to install any of the shared Gettext libraries at 59 this time, therefore there is no need to build them.</para> 60 </listitem> 61 </varlistentry> 46 62 47 <para>Compile the package:</para> 63 </variablelist> 64 65 <para>Compile the package:</para> 48 66 49 67 <screen><userinput>make -C lib 50 68 make -C src msgfmt</userinput></screen> 51 69 52 <para>As only one binary has been compiled, it is not possible to run the53 testsuite without compiling additional support libraries from the Gettext54 package.It is therefore not recommended to attempt to run the testsuite at55 this stage.</para>70 <para>As only one binary has been compiled, it is not possible to run the 71 testsuite without compiling additional support libraries from the Gettext 72 package. It is therefore not recommended to attempt to run the testsuite at 73 this stage.</para> 56 74 57 <para>Install the <command>msgfmt</command> binary:</para>75 <para>Install the <command>msgfmt</command> binary:</para> 58 76 59 77 <screen><userinput>cp -v src/msgfmt /tools/bin</userinput></screen> 60 78 61 </sect2>79 </sect2> 62 80 63 <sect2 role="content"><title/> 64 <para>Details on this package are located in <xref linkend="contents-gettext" role="."/></para> 65 </sect2> 81 <sect2 role="content"> 82 <title/> 83 84 <para>Details on this package are located in 85 <xref linkend="contents-gettext" role="."/></para> 86 87 </sect2> 66 88 67 89 </sect1> 68 -
chapter05/glibc.xml
rf658b21 rd096eb1 1 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" 3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 3 4 <!ENTITY % general-entities SYSTEM "../general.ent"> 4 5 %general-entities; 5 6 ]> 7 6 8 <sect1 id="ch-tools-glibc" role="wrap"> 7 <title>Glibc-&glibc-version;</title> 8 <?dbhtml filename="glibc.html"?> 9 10 <indexterm zone="ch-tools-glibc"> 11 <primary sortas="a-Glibc">Glibc</primary> 12 <secondary>tools</secondary></indexterm> 13 14 <sect2 role="package"><title/> 15 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/glibc.xml" xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 16 17 <segmentedlist> 18 <segtitle>&buildtime;</segtitle> 19 <segtitle>&diskspace;</segtitle> 20 <seglistitem><seg>11.8 SBU</seg><seg>454 MB</seg></seglistitem> 21 </segmentedlist> 22 23 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/glibc.xml" xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 24 25 </sect2> 26 27 <sect2 role="installation"> 28 <title>Installation of Glibc</title> 29 30 <para>The Glibc documentation recommends building Glibc outside of the source 31 directory in a dedicated build directory:</para> 9 <?dbhtml filename="glibc.html"?> 10 11 <title>Glibc-&glibc-version;</title> 12 13 <indexterm zone="ch-tools-glibc"> 14 <primary sortas="a-Glibc">Glibc</primary> 15 <secondary>tools</secondary> 16 </indexterm> 17 18 <sect2 role="package"> 19 <title/> 20 21 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 22 href="../chapter06/glibc.xml" 23 xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 24 25 <segmentedlist> 26 <segtitle>&buildtime;</segtitle> 27 <segtitle>&diskspace;</segtitle> 28 29 <seglistitem> 30 <seg>11.8 SBU</seg> 31 <seg>454 MB</seg> 32 </seglistitem> 33 </segmentedlist> 34 35 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 36 href="../chapter06/glibc.xml" 37 xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 38 39 </sect2> 40 41 <sect2 role="installation"> 42 <title>Installation of Glibc</title> 43 44 <para>The Glibc documentation recommends building Glibc outside of the source 45 directory in a dedicated build directory:</para> 32 46 33 47 <screen><userinput>mkdir -v ../glibc-build 34 48 cd ../glibc-build</userinput></screen> 35 49 36 <para>Next, prepare Glibc for compilation:</para>50 <para>Next, prepare Glibc for compilation:</para> 37 51 38 52 <screen><userinput>../glibc-&glibc-version;/configure --prefix=/tools \ … … 42 56 --without-selinux</userinput></screen> 43 57 44 <para>The meaning of the configure options:</para> 45 46 <variablelist> 47 <varlistentry> 48 <term><parameter>--disable-profile</parameter></term> 49 <listitem><para>This builds the libraries without profiling 50 information. Omit this option if profiling on the temporary tools is 51 necessary.</para></listitem> 52 </varlistentry> 53 54 <varlistentry> 55 <term><parameter>--enable-add-ons</parameter></term> 56 <listitem><para>This tells Glibc to use the NPTL add-on as its threading 57 library.</para></listitem> 58 </varlistentry> 59 60 <varlistentry> 61 <term><parameter>--enable-kernel=2.6.0</parameter></term> 62 <listitem><para>This tells Glibc to compile the library with support 63 for 2.6.x Linux kernels.</para></listitem> 64 </varlistentry> 65 66 <varlistentry> 67 <term><parameter>--with-binutils=/tools/bin</parameter></term> 68 <listitem><para>While not required, this switch ensures that there are 69 no errors pertaining to which Binutils programs get used during the 70 Glibc build.</para></listitem> 71 </varlistentry> 72 73 <varlistentry> 74 <term><parameter>--without-gd</parameter></term> 75 <listitem><para>This prevents the build of the 76 <command>memusagestat</command> program, which insists on linking 77 against the host's libraries (libgd, libpng, libz, 78 etc.).</para></listitem> 79 </varlistentry> 80 81 <varlistentry> 82 <term><parameter>--with-headers=/tools/include</parameter></term> 83 <listitem><para>This tells Glibc to compile itself against the headers recently 84 installed to the tools directory, so that it knows exactly what features the 85 kernel has and can optimize itself accordingly.</para></listitem> 86 </varlistentry> 87 88 <varlistentry> 89 <term><parameter>--without-selinux</parameter></term> 90 <listitem><para>When building from hosts that include SELinux functionality 91 (e.g., Fedora Core 3), Glibc will build with support for SELinux. As the LFS 92 tools environment does not contain support for SELinux, a Glibc compiled with 93 such support will fail to operate correctly.</para></listitem> 94 </varlistentry> 95 </variablelist> 96 97 <para>During this stage the following warning might appear:</para> 98 99 <blockquote><screen><computeroutput>configure: WARNING: 100 *** These auxiliary programs are missing or 58 <variablelist> 59 <title>The meaning of the configure options:</title> 60 61 <varlistentry> 62 <term><parameter>--disable-profile</parameter></term> 63 <listitem> 64 <para>This builds the libraries without profiling information. Omit 65 this option if profiling on the temporary tools is necessary.</para> 66 </listitem> 67 </varlistentry> 68 69 <varlistentry> 70 <term><parameter>--enable-add-ons</parameter></term> 71 <listitem> 72 <para>This tells Glibc to use the NPTL add-on as its threading 73 library.</para> 74 </listitem> 75 </varlistentry> 76 77 <varlistentry> 78 <term><parameter>--enable-kernel=2.6.0</parameter></term> 79 <listitem> 80 <para>This tells Glibc to compile the library with support 81 for 2.6.x Linux kernels.</para> 82 </listitem> 83 </varlistentry> 84 85 <varlistentry> 86 <term><parameter>--with-binutils=/tools/bin</parameter></term> 87 <listitem> 88 <para>While not required, this switch ensures that there are 89 no errors pertaining to which Binutils programs get used during the 90 Glibc build.</para> 91 </listitem> 92 </varlistentry> 93 94 <varlistentry> 95 <term><parameter>--without-gd</parameter></term> 96 <listitem> 97 <para>This prevents the build of the <command>memusagestat</command> 98 program, which insists on linking against the host's libraries 99 (libgd, libpng, libz, etc.).</para> 100 </listitem> 101 </varlistentry> 102 103 <varlistentry> 104 <term><parameter>--with-headers=/tools/include</parameter></term> 105 <listitem> 106 <para>This tells Glibc to compile itself against the headers recently 107 installed to the tools directory, so that it knows exactly what 108 features the kernel has and can optimize itself accordingly.</para> 109 </listitem> 110 </varlistentry> 111 112 <varlistentry> 113 <term><parameter>--without-selinux</parameter></term> 114 <listitem> 115 <para>When building from hosts that include SELinux functionality 116 (e.g., Fedora Core 3), Glibc will build with support for SELinux. 117 As the LFS tools environment does not contain support for SELinux, a 118 Glibc compiled with such support will fail to operate correctly.</para> 119 </listitem> 120 </varlistentry> 121 122 </variablelist> 123 124 <para>During this stage the following warning might appear:</para> 125 126 <blockquote> 127 <screen><computeroutput>configure: WARNING: 128 *** These auxiliary programs are missing or 101 129 *** incompatible versions: msgfmt 102 130 *** some features will be disabled. 103 *** Check the INSTALL file for required versions.</computeroutput></screen></blockquote> 104 105 <para>The missing or incompatible <command>msgfmt</command> program is 106 generally harmless, but it can sometimes cause issues when running the 107 test suite. This <command>msgfmt</command> program is part of the 108 Gettext package which the host distribution should provide. If 109 <command>msgfmt</command> is present but deemed incompatible, upgrade 110 the host system's Gettext package or continue without it and see if 111 the test suite runs without problems regardless.</para> 112 113 <para>Compile the package:</para> 131 *** Check the INSTALL file for required versions.</computeroutput></screen> 132 </blockquote> 133 134 <para>The missing or incompatible <command>msgfmt</command> program is 135 generally harmless, but it can sometimes cause issues when running the 136 test suite. This <command>msgfmt</command> program is part of the 137 Gettext package which the host distribution should provide. If 138 <command>msgfmt</command> is present but deemed incompatible, upgrade 139 the host system's Gettext package or continue without it and see if 140 the test suite runs without problems regardless.</para> 141 142 <para>Compile the package:</para> 114 143 115 144 <screen><userinput>make</userinput></screen> 116 145 117 <para>Compilation is now complete. As mentioned earlier, running the118 test suites for the temporary tools installed in this chapter is not119 mandatory. To run the Glibc test suite (if desired), the following120 command will do so:</para>146 <para>Compilation is now complete. As mentioned earlier, running the 147 test suites for the temporary tools installed in this chapter is not 148 mandatory. To run the Glibc test suite (if desired), the following 149 command will do so:</para> 121 150 122 151 <screen><userinput>make check</userinput></screen> 123 152 124 <para>For a discussion of test failures that are of particular 125 importance, please see <xref linkend="ch-system-glibc" role="."/></para> 126 127 <para>In this chapter, some tests can be adversely affected by 128 existing tools or environmental issues on the host system. Glibc test 129 suite failures in this chapter are typically not worrisome. The Glibc 130 installed in <xref linkend="chapter-building-system"/> is the one that 131 will ultimately end up being used, so that is the one that needs to pass 132 most tests (even in <xref linkend="chapter-building-system"/>, some 133 failures could still occur, for example, with the math tests).</para> 134 135 <para>When experiencing a failure, make a note of it, then continue by 136 reissuing the <command>make check</command> command. The test suite should pick up where it left 137 off and continue. This stop-start sequence can be circumvented by 138 issuing a <command>make -k check</command> command. If using this option, be sure to log the 139 output so that the log file can be examined for failures later.</para> 140 141 <para>The install stage of Glibc will issue a harmless warning at the 142 end about the absence of <filename>/tools/etc/ld.so.conf</filename>. 143 Prevent this warning with:</para> 153 <para>For a discussion of test failures that are of particular 154 importance, please see <xref linkend="ch-system-glibc" role="."/></para> 155 156 <para>In this chapter, some tests can be adversely affected by 157 existing tools or environmental issues on the host system. Glibc test 158 suite failures in this chapter are typically not worrisome. The Glibc 159 installed in <xref linkend="chapter-building-system"/> is the one that 160 will ultimately end up being used, so that is the one that needs to pass 161 most tests (even in <xref linkend="chapter-building-system"/>, some 162 failures could still occur, for example, with the math tests).</para> 163 164 <para>When experiencing a failure, make a note of it, then continue by 165 reissuing the <command>make check</command> command. The test suite 166 should pick up where it left off and continue. This stop-start sequence 167 can be circumvented by issuing a <command>make -k check</command> command. 168 If using this option, be sure to log the output so that the log file can 169 be examined for failures later.</para> 170 171 <para>The install stage of Glibc will issue a harmless warning at the 172 end about the absence of <filename>/tools/etc/ld.so.conf</filename>. 173 Prevent this warning with:</para> 144 174 145 175 <screen><userinput>mkdir -v /tools/etc 146 176 touch /tools/etc/ld.so.conf</userinput></screen> 147 177 148 <para>Install the package:</para>178 <para>Install the package:</para> 149 179 150 180 <screen><userinput>make install</userinput></screen> 151 181 152 <para>Different countries and cultures have varying conventions for 153 how to communicate. These conventions range from the format for 154 representing dates and times to more complex issues, such as the 155 language spoken. The <quote>internationalization</quote> of GNU 156 programs works by locale.</para> 157 158 <note><para>If the test suites are not being run in this chapter (as 159 per the recommendation), there is no need to install the locales now. 160 The appropriate locales will be installed in the next 161 chapter. To install the Glibc locales anyway, use instructions from 162 <xref linkend="ch-system-glibc" role="."/> 163 </para></note> 164 165 </sect2> 166 167 <sect2 role="content"><title/> 168 <para>Details on this package are located in <xref 169 linkend="contents-glibc" role="."/></para> 170 </sect2> 182 <para>Different countries and cultures have varying conventions for 183 how to communicate. These conventions range from the format for 184 representing dates and times to more complex issues, such as the 185 language spoken. The <quote>internationalization</quote> of GNU 186 programs works by locale.</para> 187 188 <note> 189 <para>If the test suites are not being run in this chapter (as per 190 the recommendation), there is no need to install the locales now. 191 The appropriate locales will be installed in the next chapter. 192 To install the Glibc locales anyway, use instructions from 193 <xref linkend="ch-system-glibc" role="."/></para> 194 </note> 195 196 </sect2> 197 198 <sect2 role="content"> 199 <title/> 200 201 <para>Details on this package are located in 202 <xref linkend="contents-glibc" role="."/></para> 203 204 </sect2> 171 205 172 206 </sect1> 173 -
chapter05/grep.xml
rf658b21 rd096eb1 1 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" 3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 3 4 <!ENTITY % general-entities SYSTEM "../general.ent"> 4 5 %general-entities; 5 6 ]> 7 6 8 <sect1 id="ch-tools-grep" role="wrap"> 7 <title>Grep-&grep-version;</title> 8 <?dbhtml filename="grep.html"?> 9 <?dbhtml filename="grep.html"?> 9 10 10 <indexterm zone="ch-tools-grep"> 11 <primary sortas="a-Grep">Grep</primary> 12 <secondary>tools</secondary></indexterm> 11 <title>Grep-&grep-version;</title> 13 12 14 <sect2 role="package"><title/> 15 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/grep.xml" xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 13 <indexterm zone="ch-tools-grep"> 14 <primary sortas="a-Grep">Grep</primary> 15 <secondary>tools</secondary> 16 </indexterm> 16 17 17 <segmentedlist> 18 <segtitle>&buildtime;</segtitle> 19 <segtitle>&diskspace;</segtitle> 20 <seglistitem><seg>0.1 SBU</seg><seg>4.5 MB</seg></seglistitem> 21 </segmentedlist> 18 <sect2 role="package"> 19 <title/> 22 20 23 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/grep.xml" xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 21 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 22 href="../chapter06/grep.xml" 23 xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 24 24 25 </sect2> 25 <segmentedlist> 26 <segtitle>&buildtime;</segtitle> 27 <segtitle>&diskspace;</segtitle> 26 28 27 <sect2 role="installation"> 28 <title>Installation of Grep</title> 29 <seglistitem> 30 <seg>0.1 SBU</seg> 31 <seg>4.5 MB</seg> 32 </seglistitem> 33 </segmentedlist> 29 34 30 <para>Prepare Grep for compilation:</para> 35 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 36 href="../chapter06/grep.xml" 37 xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 38 39 </sect2> 40 41 <sect2 role="installation"> 42 <title>Installation of Grep</title> 43 44 <para>Prepare Grep for compilation:</para> 31 45 32 46 <screen><userinput>./configure --prefix=/tools \ 33 47 --disable-perl-regexp</userinput></screen> 34 48 35 <para>The meaning of the configure options:</para> 49 <variablelist> 50 <title>The meaning of the configure options:</title> 36 51 37 <variablelist>38 <varlistentry>39 <term><parameter>--disable-perl-regexp</parameter></term>40 <listitem><para>This ensures that the <command>grep</command> program does not 41 get linked against a Perl Compatible Regular Expression (PCRE) library that may 42 be present on the host but will not be available once we enter the43 <command>chroot</command> environment.</para></listitem>44 </varlistentry>45 </variablelist>52 <varlistentry> 53 <term><parameter>--disable-perl-regexp</parameter></term> 54 <listitem> 55 <para>This ensures that the <command>grep</command> program does 56 not get linked against a Perl Compatible Regular Expression (PCRE) 57 library that may be present on the host but will not be available 58 once we enter the <command>chroot</command> environment.</para> 59 </listitem> 60 </varlistentry> 46 61 47 <para>Compile the package:</para> 62 </variablelist> 63 64 <para>Compile the package:</para> 48 65 49 66 <screen><userinput>make</userinput></screen> 50 67 51 <para>To test the results, issue: <userinput>make check</userinput>.</para> 68 <para>To test the results, issue: 69 <userinput>make check</userinput>.</para> 52 70 53 <para>Install the package:</para>71 <para>Install the package:</para> 54 72 55 73 <screen><userinput>make install</userinput></screen> 56 74 57 </sect2>75 </sect2> 58 76 59 <sect2 role="content"><title/> 60 <para>Details on this package are located in <xref 61 linkend="contents-grep" role="."/></para> 62 </sect2> 77 <sect2 role="content"> 78 <title/> 79 80 <para>Details on this package are located in 81 <xref linkend="contents-grep" role="."/></para> 82 83 </sect2> 63 84 64 85 </sect1> 65 -
chapter05/gzip.xml
rf658b21 rd096eb1 1 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 2 <!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN" 3 "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [ 3 4 <!ENTITY % general-entities SYSTEM "../general.ent"> 4 5 %general-entities; 5 6 ]> 7 6 8 <sect1 id="ch-tools-gzip" role="wrap"> 7 <title>Gzip-&gzip-version;</title> 8 <?dbhtml filename="gzip.html"?> 9 <?dbhtml filename="gzip.html"?> 9 10 10 <indexterm zone="ch-tools-gzip"> 11 <primary sortas="a-Gzip">Gzip</primary> 12 <secondary>tools</secondary></indexterm> 11 <title>Gzip-&gzip-version;</title> 13 12 14 <sect2 role="package"><title/> 15 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gzip.xml" xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 13 <indexterm zone="ch-tools-gzip"> 14 <primary sortas="a-Gzip">Gzip</primary> 15 <secondary>tools</secondary> 16 </indexterm> 16 17 17 <segmentedlist> 18 <segtitle>&buildtime;</segtitle> 19 <segtitle>&diskspace;</segtitle> 20 <seglistitem><seg>0.1 SBU</seg><seg>2.2 MB</seg></seglistitem> 21 </segmentedlist> 18 <sect2 role="package"> 19 <title/> 22 20 23 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" href="../chapter06/gzip.xml" xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 21 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 22 href="../chapter06/gzip.xml" 23 xpointer="xpointer(/sect1/sect2[1]/para[1])"/> 24 24 25 </sect2> 25 <segmentedlist> 26 <segtitle>&buildtime;</segtitle> 27 <segtitle>&diskspace;</segtitle> 26 28 27 <sect2 role="installation"> 28 <title>Installation of Gzip</title> 29 <seglistitem> 30 <seg>0.1 SBU</seg> 31 <seg>2.2 MB</seg> 32 </seglistitem> 33 </segmentedlist> 29 34 30 <para>Prepare Gzip for compilation:</para> 35 <xi:include xmlns:xi="http://www.w3.org/2003/XInclude" 36 href="../chapter06/gzip.xml" 37 xpointer="xpointer(/sect1/sect2[1]/segmentedlist[2])"/> 38 39 </sect2> 40 41 <sect2 role="installation"> 42 <title>Installation of Gzip</title> 43 44 <para>Prepare Gzip for compilation:</para> 31 45 32 46 <screen><userinput>./configure --prefix=/tools</userinput></screen> 33 47 34 <para>Compile the package:</para>48 <para>Compile the package:</para> 35 49 36 50 <screen><userinput>make</userinput></screen> 37 51 38 <para>This package does not come with a test suite.</para>52 <para>This package does not come with a test suite.</para> 39 53 40 <para>Install the package:</para>54 <para>Install the package:</para> 41 55 42 56 <screen><userinput>make install</userinput></screen> 43 57 44 </sect2>58 </sect2> 45 59 46 <sect2 role="content"><title/> 47 <para>Details on this package are located in <xref 48 linkend="contents-gzip" role="."/></para> 49 </sect2> 60 <sect2 role="content"> 61 <title/> 62 63 <para>Details on this package are located in 64 <xref linkend="contents-gzip" role="."/></para> 65 66 </sect2> 50 67 51 68 </sect1> 52
Note:
See TracChangeset
for help on using the changeset viewer.