Changeset ef13657 for chapter06/binutils.xml
- Timestamp:
- 08/08/2004 02:11:09 AM (20 years ago)
- Branches:
- 6.0
- Children:
- 5ba3d1d
- Parents:
- 6e41459
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
chapter06/binutils.xml
r6e41459 ref13657 30 30 <title>Installation of Binutils</title> 31 31 32 <para> Now is an appropriate time to verify that your pseudo terminals (PTYs) are33 working properly inside the chroot environment. We will again quickly check that 34 everything is set upcorrectly by performing a simple test:</para>32 <para>Verify that your the terminals (PTYs) are working properly 33 inside the chroot environment. Check that everything is set up 34 correctly by performing a simple test:</para> 35 35 36 36 <screen><userinput>expect -c "spawn ls"</userinput></screen> 37 37 38 <para>If you receive the message:</para> 38 <para>If the following message shows up, the chroot environment is not 39 set up for proper PTY operation:</para> 39 40 40 41 <screen><computeroutput>The system has no more ptys. Ask your system administrator to create more.</computeroutput></screen> 41 42 42 <para> Your chroot environment is not set up for proper PTY operation. In this43 case there is no point in running the test suites for Binutils and GCC until you 44 are able to resolve the issue.</para> 45 46 <para>This package is known to behave badly when you have changed its 47 default optimization flags (including the <parameter>-march</parameter> and <parameter>-mcpu</parameter> options). 48 Therefore, if you have defined any environment variables that override 49 default optimizations, such as CFLAGS and CXXFLAGS, we recommend un-setting 50 or modifying them when building Binutils.</para>43 <para>The issue needs to be resolved before running the test suites 44 for Binutils and GCC.</para> 45 46 <para>This package is known to have issues when its default 47 optimization flags (including the <parameter>-march</parameter> and 48 <parameter>-mcpu</parameter> options) are changed. If any environment 49 variables that override default optimizations have been defined, such 50 as <emphasis>CFLAGS</emphasis> and <emphasis>CXXFLAGS</emphasis>, 51 unset or modifying them when building Binutils.</para> 51 52 52 53 <para>The Binutils documentation recommends building Binutils outside of the … … 56 57 cd ../binutils-build</userinput></screen> 57 58 58 <para> Now prepare Binutils for compilation:</para>59 <para>Prepare Binutils for compilation:</para> 59 60 60 61 <screen><userinput>../binutils-&binutils-version;/configure --prefix=/usr --enable-shared</userinput></screen> … … 64 65 <screen><userinput>make tooldir=/usr</userinput></screen> 65 66 66 <para>Normally, the <emphasis>tooldir</emphasis> (the directory where the 67 executables end up) is set to $(exec_prefix)/$(target_alias), which expands 68 into, for example, <filename class="directory">/usr/i686-pc-linux-gnu</filename>. Since we only 69 build for our own system, we don't need this target specific directory in 70 <filename class="directory">/usr</filename>. That setup would be used if the system was used to 71 cross-compile (for example compiling a package on an Intel machine that 72 generates code that can be executed on PowerPC machines).</para> 73 74 <important><para>The test suite for Binutils in this section is considered 75 <emphasis>critical</emphasis>. Our advice is to not skip it under any 67 <para>Normally, the tooldir (the directory where the executables will 68 ultimately be located) is set to <filename 69 class="directory">$(exec_prefix)/$(target_alias)</filename>, which 70 expands into <filename 71 class="directory">/usr/i686-pc-linux-gnu</filename>. Because this is a 72 custom system, this target-specific directory in <filename 73 class="directory">/usr</filename> is not required. This setup would be 74 used if the system was used to cross-compile (for example, compiling a 75 package on an Intel machine that generates code that can be executed 76 on PowerPC machines).</para> 77 78 <important><para>The test suite for Binutils in this section is 79 considered critical. Do not skip it under any 76 80 circumstances.</para></important> 77 81 78 82 <para>Test the results:</para> 79 83 80 <screen><userinput>make -k check</userinput></screen> 81 82 <para>The test suite notes from <xref linkend="ch-tools-binutils-pass2"/> are still 83 very much appropriate here. Be sure to refer back there should you have any 84 doubts.</para> 84 <screen><userinput>make check</userinput></screen> 85 85 86 86 <para>Install the package:</para> … … 112 112 <listitem> 113 113 <indexterm zone="ch-system-binutils addr2line"><primary sortas="b-addr2line">addr2line</primary></indexterm> 114 <para>translates program addresses to file 115 names and line numbers. Given an address and the name of an executable, it 116 uses the debugging information in the executable to figure out which source117 file and linenumber are associated with the address.</para>114 <para>translates program addresses to file names and line numbers. 115 Given an address and the name of an executable, it uses the debugging 116 information in the executable to determine which source file and line 117 number are associated with the address.</para> 118 118 </listitem> 119 119 </varlistentry> … … 123 123 <listitem> 124 124 <indexterm zone="ch-system-binutils ar"><primary sortas="b-ar">ar</primary></indexterm> 125 <para>creates, modifies, and extracts from archives. An archive 126 is a single file holding a collection of other files in a structure that makes 127 it possible to retrieve the original individual files (called members of 128 the archive).</para>125 <para>creates, modifies, and extracts from archives. An archive is a 126 single file holding a collection of other files in a structure that 127 makes it possible to retrieve the original individual files (called 128 members of the archive).</para> 129 129 </listitem> 130 130 </varlistentry> … … 134 134 <listitem> 135 135 <indexterm zone="ch-system-binutils as"><primary sortas="b-as">as</primary></indexterm> 136 <para>is an assembler. It assembles the output of <command>gcc</command> into object files.</para> 136 <para>an assembler. It assembles the output of gcc into object 137 files.</para> 137 138 </listitem> 138 139 </varlistentry> … … 142 143 <listitem> 143 144 <indexterm zone="ch-system-binutils c-filt"><primary sortas="b-c++filt">c++filt</primary></indexterm> 144 <para> is used by the linker to de-mangle C++ and145 Java symbols, to keepoverloaded functions from clashing.</para>145 <para>used by the linker to de-mangle C++ and Java symbols and to keep 146 overloaded functions from clashing.</para> 146 147 </listitem> 147 148 </varlistentry> … … 159 160 <listitem> 160 161 <indexterm zone="ch-system-binutils ld"><primary sortas="b-ld">ld</primary></indexterm> 161 <para> isa linker. It combines a number of object and archive files into a single file,162 <para>a linker. It combines a number of object and archive files into a single file, 162 163 relocating their data and tying up symbol references.</para> 163 164 </listitem> … … 176 177 <listitem> 177 178 <indexterm zone="ch-system-binutils objcopy"><primary sortas="b-objcopy">objcopy</primary></indexterm> 178 <para> isused to translate one type of object file into another.</para>179 <para>used to translate one type of object file into another.</para> 179 180 </listitem> 180 181 </varlistentry> … … 184 185 <listitem> 185 186 <indexterm zone="ch-system-binutils objdump"><primary sortas="b-objdump">objdump</primary></indexterm> 186 <para>displays information about the given object file, with options controlling what 187 particular information to display. The information shown is mostly only useful to 188 programmers who are working on the compilation tools.</para> 187 <para>displays information about the given object file, with options 188 controlling the particular information to display. The information 189 shown is useful to programmers who are working on the compilation 190 tools.</para> 189 191 </listitem> 190 192 </varlistentry> … … 194 196 <listitem> 195 197 <indexterm zone="ch-system-binutils ranlib"><primary sortas="b-ranlib">ranlib</primary></indexterm> 196 <para>generates an index of the contents of an 197 archive, and stores it in the archive. The index lists all the symbols defined 198 by archivemembers that are relocatable object files.</para>198 <para>generates an index of the contents of an archive and stores it 199 in the archive. The index lists all of the symbols defined by archive 200 members that are relocatable object files.</para> 199 201 </listitem> 200 202 </varlistentry> … … 204 206 <listitem> 205 207 <indexterm zone="ch-system-binutils readelf"><primary sortas="b-readelf">readelf</primary></indexterm> 206 <para>displays information about elftype binaries.</para>208 <para>displays information about ELF type binaries.</para> 207 209 </listitem> 208 210 </varlistentry> … … 212 214 <listitem> 213 215 <indexterm zone="ch-system-binutils size"><primary sortas="b-size">size</primary></indexterm> 214 <para>lists the section sizes -- and the grand total --for the given object files.</para>216 <para>lists the section sizes and the total size for the given object files.</para> 215 217 </listitem> 216 218 </varlistentry> … … 220 222 <listitem> 221 223 <indexterm zone="ch-system-binutils strings"><primary sortas="b-strings">strings</primary></indexterm> 222 <para>outputs, for each given file, the sequences 223 of printable characters that are of at least the specified length (defaulting to 4). 224 For object files it prints, by default, only the strings from the initializing 225 and loading sections. For other types of files it scans the whole file.</para> 224 <para>outputs, for each given file, the sequences of printable 225 characters that are of at least the specified length (defaulting to 226 four). For object files, it prints, by default, only the strings from 227 the initializing and loading sections. For other types of files, it 228 scans the whole file.</para> 226 229 </listitem> 227 230 </varlistentry> … … 239 242 <listitem> 240 243 <indexterm zone="ch-system-binutils libiberty"><primary sortas="c-libiberty">libiberty</primary></indexterm> 241 <para>contains routines used by various GNU 242 programs, including getopt, obstack, strerror, strtol and strtoul.</para> 244 <para>contains routines used by various GNU programs, including 245 <command>getopt</command>, <command>obstack</command>, 246 <command>strerror</command>, <command>strtol</command> and 247 <command>strtoul</command>.</para> 243 248 </listitem> 244 249 </varlistentry> … … 248 253 <listitem> 249 254 <indexterm zone="ch-system-binutils libbfd"><primary sortas="c-libbfd">libbfd</primary></indexterm> 250 <para> isthe Binary File Descriptor library.</para>255 <para>the Binary File Descriptor library.</para> 251 256 </listitem> 252 257 </varlistentry> … … 256 261 <listitem> 257 262 <indexterm zone="ch-system-binutils libopcodes"><primary sortas="c-libopcodes">libopcodes</primary></indexterm> 258 <para> isa library for dealing with opcodes.259 It is used for building utilities like objdump. Opcodes are the <quote>readable263 <para>a library for dealing with opcodes. 264 It is used for building utilities like <command>objdump</command>. Opcodes are the <quote>readable 260 265 text</quote> versions of instructions for the processor.</para> 261 266 </listitem> … … 266 271 267 272 </sect1> 273
Note:
See TracChangeset
for help on using the changeset viewer.