source: general/prog/gcc.xml@ ea8b96e

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since ea8b96e was b9e7422, checked in by Randy McMurchy <randy@…>, 13 years ago

Updated to GCC-4.5.1

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@8763 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 25.9 KB
RevLine 
[52d29f7]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[52d29f7]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[800c9c3]7 <!ENTITY gcc-download-http "http://ftp.gnu.org/gnu/gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.bz2">
[9268fb5]8 <!ENTITY gcc-download-ftp "ftp://ftp.gnu.org/gnu/gcc/gcc-&gcc-version;/gcc-&gcc-version;.tar.bz2">
[b9e7422]9 <!ENTITY gcc-md5sum "48231a8e33ed6e058a341c53b819de1a">
10 <!ENTITY gcc-size "66 MB">
11 <!ENTITY gcc-buildsize "~3.5 GB (build, test and install all compilers)">
12 <!ENTITY gcc-time "126 SBU (build, test and install all compilers)">
[5512e64]13
14 <!ENTITY gnat-download-http "https://libre.adacore.com/libre/download/">
[b9e7422]15 <!-- We don't know what platform, so this is commented out
16 <!ENTITY gnat-md5sum "6425f2c7cabbdee4595b4b7c0d47237f">
17 <!ENTITY gnat-size "110 MB"> -->
[52d29f7]18]>
19
[58bd309a]20<sect1 id="gcc" xreflabel="GCC-&gcc-version;">
[70e3220]21 <?dbhtml filename="gcc.html" ?>
22
23 <sect1info>
24 <othername>$LastChangedBy$</othername>
25 <date>$Date$</date>
26 </sect1info>
27
28 <title>GCC-&gcc-version;</title>
29
30 <indexterm zone="gcc">
[800c9c3]31 <primary sortas="a-gcc-4-0">GCC-&gcc-version;</primary>
[70e3220]32 </indexterm>
33
34 <sect2 role="package">
35 <title>Introduction to GCC</title>
36
[8092658]37 <para>The <application>GCC</application> package contains GNU compilers.
[800c9c3]38 This package is useful for compiling programs written in C, C++, Fortran,
[5512e64]39 Java, Objective C, Objective C++, and Ada. You should ensure you actually
40 need one of these additional compilers (C and C++ are installed in LFS)
41 before you install them. Additionally, there are instructions in the BLFS
[b66ece35]42 book to install <xref linkend="icedtea6"/> or <xref linkend="jdk"/>),
[5512e64]43 which can be used instead of the Java provided by the
[b66ece35]44 <application>GCC</application> package. Many consider the Oracle JDK to be
45 a more robust Java environment than the one provided by
[5512e64]46 <application>GCC</application>.</para>
47
[636acbb1]48 <caution>
49 <para>If you are upgrading <application>GCC</application> from any other
50 version prior to &gcc-version;, then you must be careful compiling 3rd
51 party kernel modules. You should ensure that the kernel and all its
52 native modules are also compiled using the same version of
53 <application>GCC</application> that you use to build the 3rd party module.
54 This issue does not affect native kernel (and kernel modules) updates,
55 as the instructions below are a complete reinstallation of
56 <application>GCC</application>. If you have existing 3rd party modules
57 installed, ensure they are recompiled using the updated version of
58 <application>GCC</application>. As always, never update the kernel
59 headers from the ones used when <application>Glibc</application> was
60 compiled during LFS.</para>
61 </caution>
62
[5512e64]63 &lfs65_checked;
64
65 <!-- <note>
[800c9c3]66 <para>The Fortran compiler included with the
67 <application>GCC</application>-4.x package now aims to be conformant
68 with the Fortran 95 standard, not the Fortran 77 standard as all previous
69 versions of <application>GCC</application> have been. Please note the
70 following paragraph copied directly from the
71 <application>GCC</application>-&gcc-version; <command>gfortran</command>
72 man page.</para>
73
74 <para><quote>Gfortran is not yet a fully conformant Fortran 95 compiler.
75 It can generate code for most constructs and expressions, but work
76 remains to be done. In particular, there are known deficiencies with
77 ENTRY, NAMELIST, and sophisticated use of MODULES, POINTERS and DERIVED
78 TYPES. For those whose Fortran codes conform to either the Fortran 77
79 standard or the GNU Fortran 77 language, we recommend to use
80 <command>g77</command> from <application>GCC</application>
[8cfa6af]81 3.4.x</quote></para>
82
83 <para>Instructions to install the 3.4.6 version of the Fortran compiler
[43b1987f]84 can be found in <xref linkend="gcc3"/> and on the
[4e88613]85 <ulink url="&blfs-wiki;/gcc3">BLFS
[8cfa6af]86 Wiki</ulink>.</para>
[5512e64]87 </note> -->
[70e3220]88
89 <bridgehead renderas="sect3">Package Information</bridgehead>
90 <itemizedlist spacing="compact">
91 <listitem>
92 <para>Download (HTTP): <ulink url="&gcc-download-http;"/></para>
93 </listitem>
94 <listitem>
95 <para>Download (FTP): <ulink url="&gcc-download-ftp;"/></para>
96 </listitem>
97 <listitem>
98 <para>Download MD5 sum: &gcc-md5sum;</para>
99 </listitem>
100 <listitem>
101 <para>Download size: &gcc-size;</para>
102 </listitem>
103 <listitem>
104 <para>Estimated disk space required: &gcc-buildsize;</para>
105 </listitem>
106 <listitem>
107 <para>Estimated build time: &gcc-time;</para>
108 </listitem>
109 </itemizedlist>
110
111 <bridgehead renderas="sect3">GCC Dependencies</bridgehead>
112
113 <bridgehead renderas="sect4">Recommended</bridgehead>
[256ee72c]114 <para role="recommended"><xref linkend="dejagnu"/></para>
[70e3220]115
116 <note>
[8092658]117 <para>If you plan to compile Ada, you will need to install
118 <application>GNAT</application> temporarily to satisfy the circular
[0619e6d]119 dependency when you recompile <application>GCC</application>
[b9e7422]120 to include Ada. At the AdaCore download page, choose your platform and
121 2010, then select the file to download. You probably want the x86-linux
122 or x86_64-linux file.</para>
123
[70e3220]124 </note>
125
[b9e7422]126 <bridgehead renderas="sect3">GNAT GPL 2010 Package Information</bridgehead>
[70e3220]127 <itemizedlist spacing="compact">
128 <listitem>
129 <para>Download (HTTP): <ulink url="&gnat-download-http;"/></para>
130 </listitem>
131 </itemizedlist>
132
[1039de3]133 <para condition="html" role="usernotes">User Notes:
134 <ulink url="&blfs-wiki;/gcc"/></para>
135
[70e3220]136 </sect2>
137
138 <sect2 role="installation">
139 <title>Installation of GNAT</title>
140
[5512e64]141 <para>Before unpacking and changing into the GCC build directory, first
142 unpack the <application>GNAT</application> tarball and change into the
143 newly created directory and install <application>GNAT</application> by
144 running the following command:</para>
[70e3220]145
[5512e64]146<screen><userinput>make ins-all prefix=<replaceable>&lt;Your build directory&gt;</replaceable>/gnat</userinput></screen>
[3a3f7b84]147
[8092658]148 <para>The <application>GNAT</application> compiler can be
149 invoked by executing the <command>gcc</command> binary installed
[5512e64]150 in <filename
151 class='directory'><replaceable>&lt;Your build directory&gt;</replaceable>/gnat/bin</filename>.</para>
[70e3220]152
[0619e6d]153 <para>You may now remove the <application>GNAT</application>
[70e3220]154 source directory:</para>
155
156<screen><userinput>cd .. &amp;&amp;
[b9e7422]157rm -rf gnat-2010-i686-gnu-linux-libc2.3-bin</userinput></screen>
[70e3220]158
[8092658]159 <para>Prepare to compile <application>GCC</application> by placing the
[800c9c3]160 <application>GNAT</application> version of <command>gcc</command> at the
161 beginning of the <envar>PATH</envar> variable by using the following
162 commands:</para>
[70e3220]163
164<screen><userinput>PATH_HOLD=$PATH &amp;&amp;
[5512e64]165export PATH=<replaceable>&lt;Your build directory&gt;</replaceable>/gnat/bin:$PATH_HOLD</userinput></screen>
[70e3220]166
167 </sect2>
168
169 <sect2 role="installation">
170 <title>Installation of GCC</title>
171
[8092658]172 <para>Install <application>GCC</application> by running the
[70e3220]173 following commands:</para>
174
175 <important>
[8092658]176 <para>The installation process may overwrite your existing
[800c9c3]177 <application>GCC</application> <command>gcc</command> and
178 <command>c++</command> compilers and libraries. It is highly recommended
179 that you have the <application>Tcl</application>,
[0619e6d]180 <application>Expect</application> and <application>DejaGnu</application>
[4ea5113]181 packages installed before beginning the build so you can run the full
182 suite of tests.</para>
[70e3220]183
[8092658]184 <para>Do not continue with the <command>make install</command> command
[fa0e8e65]185 until you are confident the build was successful. You can compare your
[4ea5113]186 test results with those found at
187 <ulink url="http://gcc.gnu.org/ml/gcc-testresults/"/>. There's also an
[b9e7422]188 i686 32-bit platform test result produced by an LFS-SVN20101029 system at
189 <ulink url="&files-anduin;/gcc451_test.txt"/>. You
[4ea5113]190 may also want to refer to the information found in the
[3e74bafe]191 <application>GCC</application> section of Chapter 6 in the LFS
192 book (<ulink url="&lfs-root;/chapter06/gcc.html"/>).</para>
[70e3220]193 </important>
194
[3e74bafe]195 <para>The instructions below perform a <quote><command>make
196 bootstrap</command></quote> instead of just a plain
197 <quote><command>make</command></quote> intentionally. Even though it is
198 assumed that the current version of <application>GCC</application> is
199 installed in LFS, because this installation includes the Ada compiler as an
200 installed language, a bootstrap is required. The GNAT compiler must be used
201 for stage1 of the bootstrap in order to build Ada. If the process didn't
202 use a <quote>bootstrap</quote> you could end up having a
203 <command>gcc</command> installed on the system that was produced by a
[2f85c65]204 foreign compiler.</para>
[d02add0]205
[800c9c3]206<screen><userinput>sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in &amp;&amp;
[b9e7422]207sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in &amp;&amp;
208sed -i 's/Standard/Types/' gcc/ada/uintp.adb &amp;&amp;
[5512e64]209
[8ca386d]210mkdir ../gcc-build &amp;&amp;
[5512e64]211cd ../gcc-build &amp;&amp;
212
[800c9c3]213../gcc-&gcc-version;/configure \
214 --prefix=/usr \
215 --libexecdir=/usr/lib \
[b9e7422]216 --with-system-zlib \
[800c9c3]217 --enable-shared \
218 --enable-threads=posix \
219 --enable-__cxa_atexit \
[5512e64]220 --disable-multilib \
221 --enable-bootstrap \
[800c9c3]222 --enable-clocale=gnu \
[5512e64]223 --enable-languages=c,c++,ada,fortran,java,objc,obj-c++ &amp;&amp;
224
[572c673]225make bootstrap &amp;&amp;
[5512e64]226make -k check &amp;&amp;
227
[70e3220]228../gcc-&gcc-version;/contrib/test_summary</userinput></screen>
[8c9ec303]229
[70e3220]230 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
[8c9ec303]231
[70e3220]232<screen role="root"><userinput>make install &amp;&amp;
[5512e64]233
[8c9ec303]234ln -v -sf ../usr/bin/cpp /lib &amp;&amp;
235ln -v -sf gcc /usr/bin/cc &amp;&amp;
[5512e64]236
[38485e5c]237chown -v -R root:root \
[5512e64]238 /usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/include \
[70e3220]239 /usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/ada{lib,include}</userinput></screen>
240
[f182eed]241 <para>The <filename class='libraryfile'>libffi</filename> interface header
242 is installed in a location where other packages will not be able to find
243 it. If you included Java as one of the installed languages, create a
244 symbolic link in <filename class='directory'>/usr/include</filename> to
245 remedy this:</para>
246
247<screen role="root"><userinput>ln -v -sf `find /usr/lib/gcc -name ffitarget.h` /usr/include</userinput></screen>
248
[5512e64]249 <para>You should now become the unprivileged user and remove the
250 <application>GNAT</application> installation and perform other
251 cleanups:</para>
[70e3220]252
[5512e64]253<screen><userinput>rm -rf <replaceable>&lt;Your build directory&gt;</replaceable>/gnat</userinput></screen>
[70e3220]254
255<screen><userinput>export PATH=$PATH_HOLD &amp;&amp;
256unset PATH_HOLD</userinput></screen>
257
258 </sect2>
259
260 <sect2 role="commands">
261 <title>Command Explanations</title>
262
[5512e64]263 <para>The two <command>sed</command> commands are the same ones used
[b9e7422]264 during the build of LFS. The third one fixes an issue with the ADA
265 build.</para>
[70e3220]266
[8092658]267 <para><command>mkdir ../gcc-build; cd ../gcc-build</command>: The
268 <application>GCC</application> documentation recommends
[70e3220]269 building the package in a dedicated build directory.</para>
270
271 <para><parameter>--enable-shared --enable-threads=posix
[800c9c3]272 --enable-__cxa_atexit</parameter>: These parameters are required to build
[70e3220]273 the <application>C++</application> libraries to published standards.</para>
274
[5512e64]275 <para><parameter>--disable-multilib</parameter>: This parameter ensures
276 that files are created for the specific arch of your computer.</para>
277
278 <para><parameter>--enable-bootstrap</parameter>: This parameter is used
279 so that a bootstrap installation is performed.</para>
280
281 <para><parameter>--enable-clocale=gnu</parameter>: This parameter is a
[70e3220]282 failsafe for incomplete locale data.</para>
283
[800c9c3]284 <para>
[5512e64]285 <parameter>--enable-languages=c,c++,ada,fortran,java,objc,obj-c++</parameter>:
[8092658]286 This command identifies which languages to build. You may modify this command
[70e3220]287 to remove undesired languages.</para>
288
[8092658]289 <para><command>make -k check</command>: This command runs the test suite
[800c9c3]290 without stopping if any errors are encountered.</para>
[70e3220]291
[8092658]292 <para><command>../gcc-&gcc-version;/contrib/test_summary</command>: This
293 command will produce a summary of the test suite results. You can append
[70e3220]294 <command>| grep -A7 Summ</command> to the command to produce an even more
[800c9c3]295 condensed version of the summary. You may also wish to redirect the output
296 to a file for review and comparison later on.</para>
[70e3220]297
[800c9c3]298 <para><command>ln -v -sf ../usr/bin/cpp /lib</command>: This command
299 creates a link to the C PreProcessor as some packages expect it to be
300 installed in the <filename class='directory'>/lib</filename>
301 directory.</para>
[70e3220]302
[800c9c3]303 <para><command>ln -v -sf gcc /usr/bin/cc</command>: This link is created as
304 some packages refer to the C compiler using an alternate name.</para>
[70e3220]305
[800c9c3]306 <para><command>chown -v -R root:root
307 /usr/lib/gcc/i686-pc-linux-gnu/...</command>:
[8092658]308 If the package is built by a user other than root, the ownership of the
309 installed <filename class='directory'>include</filename> and
310 <filename class='directory'>adalib</filename> directories (and their
[800c9c3]311 contents) will be incorrect. These commands change the ownership to the
312 <systemitem class="username">root</systemitem> user and group . Omit the
313 command changing the Ada directories if you did not include Ada as one of
314 the installed languages.</para>
[70e3220]315
316 </sect2>
317
318 <sect2 role="content">
319 <title>Contents</title>
320
321 <segmentedlist>
322 <segtitle>Installed Programs</segtitle>
323 <segtitle>Installed Libraries</segtitle>
324 <segtitle>Installed Directories</segtitle>
325
326 <seglistitem>
[800c9c3]327 <seg>addr2name.awk, fastjar, gcj, gcj-dbtool,gcjh, gfortran, gij,
328 gjnih, gnat, gnatbind, gnatbl, gnatchop, gnatclean, gnatfind, gnatkr,
329 gnatlink, gnatls, gnatmake, gnatname, gnatprep, gnatxref, gprmake,
330 grepjar, grmic, grmiregistry, gtreelang, jcf-dump, jv-convert, jv-scan
331 and architecture specific names for gcj and gcjh</seg>
[1039de3]332 <seg>libffi.{so,a}, libgcj.{so,a}, libgfortran.{so,a},
333 libgfortranbegin.a, libgij.{so,a}, libobjc.{so,a} and numerous other
[800c9c3]334 run-time libraries and executables in /usr/lib/gcc</seg>
[3a3f7b84]335 <seg>/usr/include/c++/&gcc-version;/{gcj,gnu,java,javax,org},
[b9e7422]336 /usr/lib/gcc/i686-pc-linux-gnu/&gcc-version;/ada{include,lib},
337 /usr/lib/gcj-&gcc-version;,
338 /usr/lib/security,
339 and /usr/share/java</seg>
[70e3220]340 </seglistitem>
341 </segmentedlist>
342
[800c9c3]343 <para>Some program and library names and descriptions are not listed here,
344 but can be found at
345 <ulink url="&lfs-root;/chapter06/gcc.html#contents-gcc"/> as they were
346 initially installed during the building of LFS.</para>
347
[70e3220]348 <variablelist>
349 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
350 <?dbfo list-presentation="list"?>
351 <?dbhtml list-presentation="table"?>
352
353 <varlistentry id="addr2name.awk">
354 <term><command>addr2name.awk</command></term>
355 <listitem>
356 <para> emulates some of the functionality of addr2line.</para>
357 <indexterm zone="gcc addr2name.awk">
358 <primary sortas="b-addr2name.awk">addr2name.awk</primary>
359 </indexterm>
360 </listitem>
361 </varlistentry>
362
[800c9c3]363 <varlistentry id="fastjar-gcc">
364 <term><command>fastjar</command></term>
[70e3220]365 <listitem>
[800c9c3]366 <para>is an archive tool for <application>Java</application> archives.</para>
367 <indexterm zone="gcc fastjar-gcc">
368 <primary sortas="b-fastjar">fastjar</primary>
[70e3220]369 </indexterm>
370 </listitem>
371 </varlistentry>
372
373 <varlistentry id="gcj">
374 <term><command>gcj</command></term>
375 <listitem>
[8092658]376 <para>is an ahead-of-time compiler for the
[70e3220]377 <application>Java</application> language.</para>
378 <indexterm zone="gcc gcj">
379 <primary sortas="b-gcj">gcj</primary>
380 </indexterm>
381 </listitem>
382 </varlistentry>
383
[800c9c3]384 <varlistentry id="gcj-dbtool">
385 <term><command>gcj-dbtool</command></term>
386 <listitem>
387 <para>is a tool for creating and manipulating class file mapping
388 databases.</para>
389 <indexterm zone="gcc gcj-dbtool">
390 <primary sortas="b-gcj-dbtool">gcj-dbtool</primary>
391 </indexterm>
392 </listitem>
393 </varlistentry>
394
[70e3220]395 <varlistentry id="gcjh">
396 <term><command>gcjh</command></term>
397 <listitem>
[0619e6d]398 <para>generates header files from <application>Java</application>
[70e3220]399 class files.</para>
400 <indexterm zone="gcc gcjh">
401 <primary sortas="b-gcjh">gcjh</primary>
402 </indexterm>
403 </listitem>
404 </varlistentry>
405
[800c9c3]406 <varlistentry id="gfortran">
407 <term><command>gfortran</command></term>
408 <listitem>
409 <para>is the <application>Fortran</application> compiler invoked by
410 <command>gcc</command>.</para>
411 <indexterm zone="gcc gfortran">
412 <primary sortas="b-gfortran">gfortran</primary>
413 </indexterm>
414 </listitem>
415 </varlistentry>
416
[70e3220]417 <varlistentry id="gij">
418 <term><command>gij</command></term>
419 <listitem>
[0619e6d]420 <para>is the GNU interpreter for <application>Java</application>
[70e3220]421 bytecode.</para>
422 <indexterm zone="gcc gij">
423 <primary sortas="b-gij">gij</primary>
424 </indexterm>
425 </listitem>
426 </varlistentry>
427
[800c9c3]428 <varlistentry id="gjnih">
429 <term><command>gjnij</command></term>
430 <listitem>
431 <para>is used to generate JNI header files from class files. Running
432 it is equivalent to running <command>gcjh -jni</command>.</para>
433 <indexterm zone="gcc gjnih">
434 <primary sortas="b-gjnih">gjnih</primary>
435 </indexterm>
436 </listitem>
437 </varlistentry>
438
[70e3220]439 <varlistentry id="gnat">
440 <term><command>gnat</command></term>
441 <listitem>
[8092658]442 <para>is the <application>Ada</application> compiler invoked by
[70e3220]443 <command>gcc</command>.</para>
444 <indexterm zone="gcc gnat">
445 <primary sortas="b-gnat">gnat</primary>
446 </indexterm>
447 </listitem>
448 </varlistentry>
449
450 <varlistentry id="gnatbind">
451 <term><command>gnatbind</command></term>
452 <listitem>
453 <para>is used to bind compiled objects.</para>
454 <indexterm zone="gcc gnatbind">
455 <primary sortas="b-gnatbind">gnatbind</primary>
456 </indexterm>
457 </listitem>
458 </varlistentry>
459
460 <varlistentry id="gnatbl">
461 <term><command>gnatbl</command></term>
462 <listitem>
463 <para>is the <application>Ada</application> linker.</para>
464 <indexterm zone="gcc gnatbl">
465 <primary sortas="b-gnatbl">gnatbl</primary>
466 </indexterm>
467 </listitem>
468 </varlistentry>
469
470 <varlistentry id="gnatchop">
471 <term><command>gnatchop</command></term>
472 <listitem>
[8092658]473 <para>is useful for renaming files to meet the standard
[70e3220]474 <application>Ada</application> default file naming conventions.</para>
475 <indexterm zone="gcc gnatchop">
476 <primary sortas="b-gnatchop">gnatchop</primary>
477 </indexterm>
478 </listitem>
479 </varlistentry>
480
481 <varlistentry id="gnatclean">
482 <term><command>gnatclean</command></term>
483 <listitem>
[8092658]484 <para>is used to remove files associated with a
[70e3220]485 <application>GNAT</application> project.</para>
486 <indexterm zone="gcc gnatclean">
487 <primary sortas="b-gnatclean">gnatclean</primary>
488 </indexterm>
489 </listitem>
490 </varlistentry>
491
492 <varlistentry id="gnatfind">
493 <term><command>gnatfind</command></term>
494 <listitem>
495 <para> is the <application>GNAT</application> definition/use finder.</para>
496 <indexterm zone="gcc gnatfind">
497 <primary sortas="b-gnatfind">gnatfind</primary>
498 </indexterm>
499 </listitem>
500 </varlistentry>
501
502 <varlistentry id="gnatkr">
503 <term><command>gnatkr</command></term>
504 <listitem>
[8092658]505 <para>is used to determine the crunched name for a given file, when
[70e3220]506 crunched to a specified maximum length.</para>
507 <indexterm zone="gcc gnatkr">
508 <primary sortas="b-gnatkr">gnatkr</primary>
509 </indexterm>
510 </listitem>
511 </varlistentry>
512
513 <varlistentry id="gnatlink">
514 <term><command>gnatlink</command></term>
515 <listitem>
516 <para>is used to link programs and build an executable file.</para>
517 <indexterm zone="gcc gnatlink">
518 <primary sortas="b-gnatlink">gnatlink</primary>
519 </indexterm>
520 </listitem>
521 </varlistentry>
522
523 <varlistentry id="gnatls">
524 <term><command>gnatls</command></term>
525 <listitem>
526 <para>is the compiled unit browser.</para>
527 <indexterm zone="gcc gnatls">
528 <primary sortas="b-gnatls">gnatls</primary>
529 </indexterm>
530 </listitem>
531 </varlistentry>
532
533 <varlistentry id="gnatmake">
534 <term><command>gnatmake</command></term>
535 <listitem>
536 <para>is an automatic <command>make</command> facility.</para>
537 <indexterm zone="gcc gnatmake">
538 <primary sortas="b-gnatmake">gnatmake</primary>
539 </indexterm>
540 </listitem>
541 </varlistentry>
542
543 <varlistentry id="gnatname">
544 <term><command>gnatname</command></term>
545 <listitem>
546 <para>will list the files associated with a
547 <application>GNAT</application> project.</para>
548 <indexterm zone="gcc gnatname">
549 <primary sortas="b-gnatname">gnatname</primary>
550 </indexterm>
551 </listitem>
552 </varlistentry>
553
554 <varlistentry id="gnatprep">
555 <term><command>gnatprep</command></term>
556 <listitem>
557 <para>is the <application>GNAT</application> external preprocessor.</para>
558 <indexterm zone="gcc gnatprep">
559 <primary sortas="b-gnatprep">gnatprep</primary>
560 </indexterm>
561 </listitem>
562 </varlistentry>
563
564 <varlistentry id="gnatxref">
565 <term><command>gnatxref</command></term>
566 <listitem>
567 <para>is the <application>GNAT</application> cross-referencer.</para>
568 <indexterm zone="gcc gnatxref">
569 <primary sortas="b-gnatxref">gnatxref</primary>
570 </indexterm>
571 </listitem>
572 </varlistentry>
573
[800c9c3]574 <varlistentry id="gprmake">
575 <term><command>gprmake</command></term>
[70e3220]576 <listitem>
[8092658]577 <para>is a tool used to create <filename>Makefile</filename>s that
[70e3220]578 support compilation by multiple languages.</para>
[800c9c3]579 <indexterm zone="gcc gprmake">
580 <primary sortas="b-gprmake">gprmake</primary>
[70e3220]581 </indexterm>
582 </listitem>
583 </varlistentry>
584
585 <varlistentry id="grepjar">
586 <term><command>grepjar</command></term>
587 <listitem>
588 <para>searches <filename>jar</filename> files for a pattern.</para>
589 <indexterm zone="gcc grepjar">
590 <primary sortas="b-grepjar">grepjar</primary>
591 </indexterm>
592 </listitem>
593 </varlistentry>
594
[800c9c3]595 <varlistentry id="grmic-gcc">
596 <term><command>grmic</command></term>
[70e3220]597 <listitem>
[800c9c3]598 <para>generates stubs for Remote Method Invocation.</para>
599 <indexterm zone="gcc grmic-gcc">
600 <primary sortas="b-grmic">grmic</primary>
601 </indexterm>
602 </listitem>
603 </varlistentry>
604
605 <varlistentry id="grmiregistry-gcc">
606 <term><command>grmiregistry</command></term>
607 <listitem>
608 <para> starts a remote object registry on the current host.</para>
609 <indexterm zone="gcc grmiregistry-gcc">
610 <primary sortas="b-grmiregistry">grmiregistry</primary>
611 </indexterm>
612 </listitem>
613 </varlistentry>
614
615 <varlistentry id="gtreelang">
616 <term><command>gtreelang</command></term>
617 <listitem>
618 <para>is largely a cut down version of C, designed to showcase the
619 features of the <application>GCC</application> code generation back
620 end. Only those features that are directly supported by the
621 <application>GCC</application> code generation back end are
622 implemented. Features are implemented in a manner which is easiest
623 and clearest to implement. Not all or even most code generation back
624 end features are implemented. The intention is to add features
625 incrementally until most features of the
626 <application>GCC</application> back end are implemented in
627 Treelang.</para>
628 <indexterm zone="gcc gtreelang">
629 <primary sortas="b-gtreelang">gtreelang</primary>
[70e3220]630 </indexterm>
631 </listitem>
632 </varlistentry>
633
634 <varlistentry id="jcf-dump">
635 <term><command>jcf-dump</command></term>
636 <listitem>
[0619e6d]637 <para>prints information about <application>Java</application>
[70e3220]638 class files.</para>
639 <indexterm zone="gcc jcf-dump">
640 <primary sortas="b-jcf-dump">jcf-dump</primary>
641 </indexterm>
642 </listitem>
643 </varlistentry>
644
645 <varlistentry id="jv-convert">
646 <term><command>jv-convert</command></term>
647 <listitem>
648 <para>converts files from one encoding to another.</para>
649 <indexterm zone="gcc jv-convert">
650 <primary sortas="b-jv-convert">jv-convert</primary>
651 </indexterm>
652 </listitem>
653 </varlistentry>
654
655 <varlistentry id="jv-scan">
656 <term><command>jv-scan</command></term>
657 <listitem>
[0619e6d]658 <para>prints information about <application>Java</application>
[70e3220]659 source files.</para>
660 <indexterm zone="gcc jv-scan">
661 <primary sortas="b-jv-scan">jv-scan</primary>
662 </indexterm>
663 </listitem>
664 </varlistentry>
665
666 </variablelist>
667
668 </sect2>
[1a686a1]669
670</sect1>
Note: See TracBrowser for help on using the repository browser.