update gcc intros

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@1199 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
Larry Lawrence 2003-09-26 03:06:17 +00:00
parent 681ad689d3
commit 58bd309a05
18 changed files with 171 additions and 125 deletions

View File

@ -94,9 +94,15 @@ otherterm="gSMB">SMB</glossseealso></glossdef></glossentry>
<glossentry id="gFTP"><glossterm><acronym>FTP</acronym></glossterm>
<glossdef><para>File Transfer Protocol</para></glossdef></glossentry>
<glossentry id="gGCC"><glossterm><acronym>GCC</acronym></glossterm>
<glossdef><para><acronym>GNU</acronym> Compiler Collection</para></glossdef></glossentry>
<glossentry id="gGDK"><glossterm><acronym>GDK</acronym></glossterm>
<glossdef><para><acronym>GTK</acronym>+ Drawing Kit</para></glossdef></glossentry>
<glossentry id="gGNAT"><glossterm><acronym>GNAT</acronym></glossterm>
<glossdef><para><acronym>GNU</acronym> NYU Ada 9x Translator</para></glossdef></glossentry>
<glossentry id="gGNU"><glossterm><acronym>GNU</acronym></glossterm>
<glossdef><para><acronym>GNU</acronym>'s Not Unix</para></glossdef></glossentry>

View File

@ -1,6 +1,6 @@
<sect1 id="nmap" xreflabel="nmap">
<sect1 id="nmap" xreflabel="Nmap-&nmap-version;">
<?dbhtml filename="nmap.html" dir="basicnet"?>
<title>nmap-&nmap-version;</title>
<title>Nmap-&nmap-version;</title>
&nmap-intro;
&nmap-inst;

View File

@ -1,7 +1,7 @@
<sect2>
<title>Contents</title>
<para>The <application>nmap</application> package contains
<para>The <application>Nmap</application> package contains
<command>nmap</command>.</para>
</sect2>

View File

@ -1,7 +1,7 @@
<sect2>
<title>Installation of <application>nmap</application></title>
<title>Installation of <application>Nmap</application></title>
<para>Install <application>nmap</application> by running the following commands:</para>
<para>Install <application>Nmap</application> by running the following commands:</para>
<para><screen><userinput><command>./configure --prefix=/usr &amp;&amp;
make &amp;&amp;

View File

@ -1,8 +1,8 @@
<sect2>
<title>Introduction to <application>nmap</application></title>
<title>Introduction to <application>Nmap</application></title>
<para><application>nmap</application> is a utility for network exploration and security
auditing. It supports ping scanning, port scanning and
<para><application>Nmap</application> is a utility for network exploration and
security auditing. It supports ping scanning, port scanning and
<acronym>TCP</acronym>/<acronym>IP</acronym>
fingerprinting.</para>

View File

@ -1,6 +1,6 @@
<sect1 id="gcc" xreflabel="gcc-&gcc-version;">
<sect1 id="gcc" xreflabel="GCC-&gcc-version;">
<?dbhtml filename="gcc.html" dir="general"?>
<title>gcc-&gcc-version;</title>
<title>GCC-&gcc-version;</title>
&gnat-intro;
&gnat-inst;

View File

@ -1,7 +1,8 @@
<sect2>
<title>Contents</title>
<para>The gcc package contains <command>c++</command>,
<para>The <application><acronym>GCC</acronym></application> package contains
<command>c++</command>,
<command>c++filt</command>, <command>cpp</command>,
<command>g++</command>, <command>g77</command>,
<command>gcc</command>, <command>gccbug</command>,
@ -19,51 +20,61 @@
<sect2><title>Description</title>
<para>The programs and libraries whose descriptions are missing here
have been described in the <acronym>LFS</acronym> gcc-&gcc-version; page.</para>
have been described in the <acronym>LFS</acronym>
<acronym>GCC</acronym>-&gcc-version; page.</para>
<sect3><title>g77</title>
<para><command>g77</command> is the Fortran compiler invoked by gcc.</para></sect3>
<para><command>g77</command> is the <application>Fortran</application> compiler
invoked by <command>gcc</command>.</para></sect3>
<sect3><title>add2line</title>
<para><command>add2line</command> converts the ASCII form of the 2-line orbital elements in
a file to binary form and appends them to the orbdata files. </para></sect3>
<para><command>add2line</command> converts the <acronym>ASCII</acronym> form of
the 2-line orbital elements in a file to binary form and appends them to the
orbdata files. </para></sect3>
<sect3><title>gcov</title>
<para><command>gcov</command> is a test coverage program.</para></sect3>
<sect3><title>gdb</title>
<para><command>gdb</command> is the GNAT debugger.</para></sect3>
<para><command>gdb</command> is the
<application><acronym>GNAT</acronym></application> debugger.</para></sect3>
<sect3><title>gnatbind</title>
<para><command>gnatbind</command> is used to bind compiled objects.</para></sect3>
<para><command>gnatbind</command> is used to bind compiled objects.</para>
</sect3>
<sect3><title>gnatbl</title>
<para><command>gnatbl</command> is the Ada linker. </para></sect3>
<para><command>gnatbl</command> is the <application>Ada</application> linker.
</para></sect3>
<sect3><title>gnatchop</title>
<para><command>gnatchop</command> is useful for renaming files to meet the standard Ada
default file naming conventions.</para></sect3>
<para><command>gnatchop</command> is useful for renaming files to meet the
standard <application>Ada</application> default file naming conventions.</para>
</sect3>
<sect3><title>gnatelim</title>
<para><command>gnatelim</command> is used to detect and eliminate unused subprograms in an
Ada partition.</para></sect3>
<para><command>gnatelim</command> is used to detect and eliminate unused
subprograms in an <application>Ada</application> partition.</para></sect3>
<sect3><title>gnatfind</title>
<para><command>gnatfind</command> is the GNAT definition/use finder.</para></sect3>
<para><command>gnatfind</command> is the <application><acronym>GNAT</acronym>
</application> definition/use finder.</para></sect3>
<sect3><title>gnatgcc</title>
<para><command>gnatgcc</command> is the compiler.</para></sect3>
<sect3><title>gnathtml.pl</title>
<para><command>gnathtml.pl</command> converts Ada source files to html for viewing in Web
browsers.</para></sect3>
<para><command>gnathtml.pl</command> converts
<application>Ada</application> source files to <acronym>HTML</acronym> for
viewing in Web browsers.</para></sect3>
<sect3><title>gnatkr</title>
<para><command>gnatkr</command> is used to determine the crunched name for a given file,
when crunched to a specified maximum length.</para></sect3>
<para><command>gnatkr</command> is used to determine the crunched name for a
given file, when crunched to a specified maximum length.</para></sect3>
<sect3><title>gnatlink</title>
<para><command>gnatlink</command> is used to link programs and build an executable file.</para></sect3>
<para><command>gnatlink</command> is used to link programs and build an
executable file.</para></sect3>
<sect3><title>gnatls</title>
<para><command>gnatls</command> is the compiled unit browser.</para></sect3>
@ -72,28 +83,32 @@ when crunched to a specified maximum length.</para></sect3>
<para><command>gnatmake</command> is an automatic make facility.</para></sect3>
<sect3><title>gnatmem</title>
<para><command>gnatmem</command> is the GNAT utility that monitors dynamic allocation and
<para><command>gnatmem</command> is the <application><acronym>GNAT</acronym>
</application> utility that monitors dynamic allocation and
deallocation activity in a program.</para></sect3>
<sect3><title>gnatprep</title>
<para><command>gnatprep</command> is the GNAT external preprocessor.</para></sect3>
<para><command>gnatprep</command> is the
<application><acronym>GNAT</acronym></application> external preprocessor.</para>
</sect3>
<sect3><title>gnatpsta</title>
<para><command>gnatpsta</command> determines the values of all the relevant parameters in
Standard and outputs to stdout.</para></sect3>
<para><command>gnatpsta</command> determines the values of all the relevant
parameters in Standard and outputs to stdout.</para></sect3>
<sect3><title>gnatpsys</title>
<para><command>gnatpsys</command> determines the values of all the relevant parameters in
System and outputs to stdout.</para></sect3>
<para><command>gnatpsys</command> determines the values of all the relevant
parameters in System and outputs to stdout.</para></sect3>
<sect3><title>gnatstub</title>
<para><command>gnatstub</command> is a generator of body stubs.</para></sect3>
<sect3><title>gnatxref</title>
<para><command>gnatxref</command> is the GNAT cross-referencer.</para></sect3>
<para><command>gnatxref</command> is the <application><acronym>GNAT</acronym></application> cross-referencer.</para></sect3>
<sect3><title>gvd</title>
<para><command>gvd</command> is the GNU Visual Debugger.</para></sect3>
<para><command>gvd</command> is the <acronym>GNU</acronym> Visual Debugger.
</para></sect3>
</sect2>

View File

@ -6,31 +6,37 @@ stores your current path before it's modified so that it can be restored after
installation.</para>
<para><command>export PATH=/opt/gnat/bin:$PATH</command> : This
command allows the build to find gnat's Ada compiler to build
Ada.</para>
command allows the build to find
<application><acronym>GNAT</acronym></application>'s
<application>Ada</application> compiler to build
<application>Ada</application>.</para>
<para><command>touch treeprs.ads [es]info.h nmake.ad[bs]</command> :
This command creates necessary files for the Ada build. This step
may be skipped if you don't want to compile the ada frontend.</para>
This command creates necessary files for the
<application>Ada</application> build. This step
may be skipped if you don't want to compile the
<application>Ada</application> frontend.</para>
<para><command>CC=/usr/bin/gcc</command> : This command works around the
new <envar>PATH</envar> which puts <application>gnat</application>'s
<command>gcc</command> as the primary compiler.</para>
new <envar>PATH</envar> which puts <application><acronym>GNAT</acronym>
</application>'s <command>gcc</command> as the primary compiler.</para>
<para><command>--enable-languages=c,c++,objc,f77,ada,java</command>
: This command builds all available languages in the gcc package.
: This command builds all available languages in the
<application><acronym>GCC</acronym></application> package.
You may modify this command to remove unwanted languages.</para>
<para><command>--enable-shared --enable-threads=posix
--enable-__cxa_atexit</command> : These commands are required to build
the C++ libraries to published standards.</para>
the <application>C++</application> libraries to published standards.</para>
<para><command>--enable-clocale=gnu</command> : This command is a
failsafe for incomplete locale data.</para>
<para><command>make gnatlib_and tools</command> : This command
completes the Ada build process. Skip this step if you have not enabled
ADA as one of the languages.</para>
completes the <application>Ada</application> build process. Skip this step if
you have not enabled <application>Ada</application> as one of the languages.
</para>
</sect2>

View File

@ -1,10 +1,11 @@
<sect2>
<title>Installation of <application>gcc</application></title>
<title>Installation of <application><acronym>GCC</acronym></application></title>
<para>Patch the source files with the following command:</para>
<screen><userinput><command>patch -Np1 -i ../gcc-3.3.1-no_fixincludes-2.patch</command></userinput></screen>
<para>Install <application>gcc</application> by running the following commands:</para>
<para>Install <application><acronym>GCC</acronym></application> by running the
following commands:</para>
<screen><userinput><command>PATH_HOLD=$PATH &amp;&amp;
export PATH=/opt/gnat/bin:$PATH &amp;&amp;
@ -22,7 +23,8 @@ make install &amp;&amp;
ln -sf g77 /usr/bin/f77 &amp;&amp;
export PATH=$PATH_HOLD</command></userinput></screen>
<para>You may remove the <application>gnat</application> installation:</para>
<para>You may remove the <application><acronym>GNAT</acronym></application>
installation:</para>
<screen><userinput><command>rm -rf /opt/gnat</command></userinput></screen>
</sect2>

View File

@ -1,9 +1,12 @@
<sect2>
<title>Introduction to <application>gcc</application></title>
<title>Introduction to <application><acronym>GCC</acronym></application></title>
<para>The gcc package contains GNU compilers. This is useful for
compiling programs written in Ada, C, C++, Fortran, Java and Objective
C.</para>
<para>The <application><acronym>GCC</acronym></application> package
contains <acronym>GNU</acronym> compilers. This is useful for
compiling programs written in <application>Ada</application>,
<application>C</application>, <application>C++</application>,
<application>Fortran</application>, <application>Java</application> and
<application>Objective C</application>.</para>
<sect3><title>Package information</title>
<itemizedlist spacing='compact'>

View File

@ -1,14 +1,15 @@
<sect2>
<title>Installation of <application>gnat</application></title>
<title>Installation of <application><acronym>GNAT</acronym></application></title>
<para>Install <application>gnat</application> by running the following commands:</para>
<para>Install <application><acronym>GNAT</acronym></application> by running the
following commands:</para>
<screen><userinput><command>./doconfig</command></userinput></screen>
<para>The above script will ask you how and where you would like to install
<application>gnat</application>. To avoid conflicts with the system
<command>gcc</command>, the package will be installed
in a separate directory, that can later be removed from the system.</para>
<application><acronym>GNAT</acronym></application>. To avoid conflicts with the
system <command>gcc</command>, the package will be installed in a separate
directory, that can later be removed from the system.</para>
<para>In response to the questions asked by the
<command>doconfig</command> script, enter
@ -19,15 +20,9 @@ second question.</para>
<para>To finish the install, run</para>
<screen><userinput><command>./doinstall</command></userinput></screen>
<para>The <application>gnat</application> compiler can be invoked by
executing the <command>gcc</command> binary
installed by the above script. <!-- To avoid conflicts with the system
<command>gcc</command>, we will rename the <command>gcc</command>
command.--></para>
<!-- <screen><userinput><command>cd /opt/gnat/bin &amp;&amp;
mv gcc gnatgcc &amp;&amp;
cd real &amp;&amp;
mv gcc gnatgcc</command></userinput></screen> -->
<para>The <application><acronym>GNAT</acronym></application> compiler can be
invoked by executing the <command>gcc</command> binary installed by the above
script.</para>
</sect2>

View File

@ -1,13 +1,15 @@
<sect2>
<title>Introduction to <application>gnat</application> (binary version)</title>
<title>Introduction to <application><acronym>GNAT</acronym></application>
(binary version)</title>
<para>The <application>gnat</application> package contains a precompiled Ada compiler.
This package is used to satisfy the circular
dependency when you recompile <application>gcc</application> to include ada.</para>
<para>The <application><acronym>GNAT</acronym></application> package contains a
precompiled <application>Ada</application> compiler. This package is used to
satisfy the circular dependency when you recompile <application><acronym>
GCC</acronym></application> to include <application>Ada</application>.</para>
<para>You may skip installation of <application>gnat</application> if you do not want to recompile
gcc
with ada support.</para>
<para>You may skip installation of <application><acronym>GNAT</acronym>
</application> if you do not want to recompile <application><acronym>GCC
</acronym></application> with <application>Ada</application> support.</para>
<sect3><title>Package information</title>
@ -25,7 +27,7 @@ url="&gnat-download-ftp;"/></para></listitem>
<sect3><title><application>gnat</application> dependencies</title>
<sect3><title><application><acronym>GNAT</acronym></application> dependencies</title>
<sect4><title>Required</title>
<para><xref linkend="tcsh"/></para></sect4>
</sect3>

View File

@ -1,6 +1,6 @@
<sect1 id="gcc2" xreflabel="gcc-&gcc2-version;">
<sect1 id="gcc2" xreflabel="GCC-&gcc2-version;">
<?dbhtml filename="gcc2.html" dir="general"?>
<title>gcc-&gcc2-version;</title>
<title>GCC-&gcc2-version;</title>
&gcc2-intro;
&gcc2-inst;

View File

@ -1,21 +1,21 @@
<sect2>
<title>Configuring gcc</title>
<title>Configuring <application><acronym>GCC</acronym></application></title>
<sect3><title>Configuration Information</title>
&library-config;
<para>The instructions given above make compatibility symlinks that pre-compiled
packages in BLFS require. You may create additional compatibility links based on
your requirements.</para>
packages in <acronym>BLFS</acronym> require. You may create additional
compatibility links based on your requirements.</para>
<para>If you only need the gcc-&gcc2-version; libraries, you may delete
<para>If you only need the GCC-&gcc2-version; libraries, you may delete
<filename>/opt/gcc-&gcc2-version;</filename>.</para>
<para>Whenever you need to use gcc-&gcc2-version; instead of you system installed compiler,
add <filename class="directory">/opt/gcc-&gcc2-version;/bin</filename> to the front of your
<envar>PATH</envar> or (preferably) set the <envar>CC</envar> environment variable before compiling the concerned
package.</para>
<para>Whenever you need to use GCC-&gcc2-version; instead of you system
installed compiler, add
<filename class="directory">/opt/gcc-&gcc2-version;/bin</filename> to the front of your <envar>PATH</envar> or (preferably) set the <envar>CC</envar>
environment variable before compiling the concerned package.</para>
</sect3>

View File

@ -1,11 +1,11 @@
<sect2>
<title>Contents</title>
<para>The gcc-&gcc2-version; package contains the
<userinput>gcc-&gcc2-version; C and C++ compilers</userinput>
and <userinput>gcc-&gcc2-version;
libstdc++.so</userinput> that is required by some commercial and pre-compiled
packages.</para>
<para>The GCC-&gcc2-version; package contains the
<command>gcc</command>-&gcc2-version; <application>C</application> and
<application>C++</application> compilers and GCC-&gcc2-version;
<filename>libstdc++.so</filename> that is required by some commercial and
pre-compiled packages.</para>
</sect2>

View File

@ -1,42 +1,44 @@
<sect2>
<title>Installation of gcc</title>
<title>Installation of <application><acronym>GCC</acronym></application></title>
<para>Apply the patches:</para>
<para><screen><userinput>patch -Np1 -i ../gcc-&gcc2-version;-2.patch &amp;&amp;
<screen><userinput><command>patch -Np1 -i ../gcc-&gcc2-version;-2.patch &amp;&amp;
patch -Np1 -i ../gcc-&gcc2-version;-no-fixinc.patch &amp;&amp;
patch -Np1 -i ../gcc-&gcc2-version;-returntype-fix.patch</userinput></screen></para>
patch -Np1 -i ../gcc-&gcc2-version;-returntype-fix.patch</command></userinput></screen>
<para>The gcc development team recommends building in a separate directory.</para>
<para>The <acronym>GCC</acronym> development team recommends building in a
separate directory.</para>
<para><screen><userinput>mkdir ../gcc-build &amp;&amp;
cd ../gcc-build</userinput></screen></para>
<screen><userinput><command>mkdir ../gcc-build &amp;&amp;
cd ../gcc-build</command></userinput></screen>
<para>Configure gcc to build the C and C++ compilers and enable the related C++
options.</para>
<para><screen><userinput>../gcc-&gcc2-version;/configure \
<para>Configure <acronym>GCC</acronym> to build the
<application>C</application> and <application>C++</application> compilers and
enable the related <application>C++</application> options.</para>
<screen><userinput><command>../gcc-&gcc2-version;/configure \
--prefix=/opt/gcc-&gcc2-version; \
--enable-shared --enable-languages=c,c++ \
--enable-threads=posix</userinput></screen></para>
--enable-threads=posix</command></userinput></screen>
<para>Compile and install gcc:</para>
<para><screen><userinput>make bootstrap &amp;&amp;
make install</userinput></screen></para>
<para>Compile and install <acronym>GCC</acronym>:</para>
<screen><userinput><command>make bootstrap &amp;&amp;
make install</command></userinput></screen>
<para>Make note of the library that is installed.</para>
<para><screen><userinput>L=`find /opt/gcc-&gcc2-version;/lib -name "*libstdc++*.so" -type f` &amp;&amp;
IL=`basename $L`</userinput></screen></para>
<screen><userinput><command>L=`find /opt/gcc-&gcc2-version;/lib -name "*libstdc++*.so" -type f` &amp;&amp;
IL=`basename $L`</command></userinput></screen>
<para>Move the C++ libraries to the standard lib directory to avoid having to
add <filename>/opt/gcc-&gcc2-version;/lib</filename> to
<filename>/etc/ld.so.conf</filename>.</para>
<para>Move the <application>C++</application> libraries to the standard lib
directory to avoid having to add <filename>/opt/gcc-&gcc2-version;/lib
</filename> to <filename>/etc/ld.so.conf</filename>.</para>
<para><screen><userinput>for i in /opt/gcc-&gcc2-version;/lib/*.so*; do mv -f $i /usr/lib;
ln -sf /usr/lib/`basename $i` /opt/gcc-&gcc2-version;/lib; done</userinput></screen></para>
<screen><userinput><command>for i in /opt/gcc-&gcc2-version;/lib/*.so*; do mv -f $i /usr/lib;
ln -sf /usr/lib/`basename $i` /opt/gcc-&gcc2-version;/lib; done</command></userinput></screen>
<para>Create symlinks required by commercial and precompiled packages.</para>
<para><screen><userinput>ln -sf $IL /usr/lib/libstdc++-libc6.1-1.so.2 &amp;&amp;
<screen><userinput><command>ln -sf $IL /usr/lib/libstdc++-libc6.1-1.so.2 &amp;&amp;
ln -sf $IL /usr/lib/libstdc++-libc6.2-2.so.3 &amp;&amp;
ln -sf $IL /usr/lib/libstdc++-libc6.3-2.so.3</userinput></screen></para>
ln -sf $IL /usr/lib/libstdc++-libc6.3-2.so.3</command></userinput></screen>
</sect2>

View File

@ -1,19 +1,33 @@
<sect2>
<title>Introduction to gcc-&gcc2-version;</title>
<title>Introduction to <application><acronym>GCC</acronym></application>-&gcc2-version;</title>
<screen>Download location (FTP): <ulink url="&gcc2-download-ftp;"/>
Version used: &gcc2-version;
Package size: &gcc2-size;
Estimated Disk space required: &gcc2-buildsize;</screen>
<para>There are two reasons for installing gcc-&gcc2-version;. The first is that the kernel
developers have certified gcc-&gcc2-version; as the preferred compiler for compiling the
kernel. The other (and more compelling reason) is that some
commercial closed-source packages (such as Netscape Navigator, Yahoo Pager)
and precompiled packages (such as Mozilla)
are linked against gcc-&gcc2-version; libs.</para>
<para>There are two reasons for installing
<acronym>GCC</acronym>-&gcc2-version;. The first is that the kernel
developers have certified <acronym>GCC</acronym>-&gcc2-version; as the
preferred compiler for compiling the kernel. The other (and more compelling
reason) is that some commercial closed-source packages (such as Netscape
Navigator, Yahoo Pager) and precompiled packages (such as Mozilla)
are linked against <acronym>GCC</acronym>-&gcc2-version; libs.</para>
<sect3><title>Package information</title>
<itemizedlist spacing='compact'>
<listitem><para>Download (HTTP): <ulink
url="&gcc2-download-http;"/></para></listitem>
<listitem><para>Download (FTP): <ulink
url="&gcc2-download-ftp;"/></para></listitem>
<listitem><para>Download size: &gcc2-size;</para></listitem>
<listitem><para>Estimated Disk space required:
&gcc2-buildsize;</para></listitem>
<listitem><para>Estimated build time:
&gcc2-time;</para></listitem></itemizedlist>
</sect3>
<sect3><title>Additional downloads</title>
<itemizedlist spacing='compact'>
<listitem><para>Required patches:
<ulink url="&hfile-root;"/></para></listitem></itemizedlist>
</sect3>
<para>Download the gcc patches from <ulink url="&hfile-root;"/>.
</para>
</sect2>

View File

@ -8,3 +8,4 @@
<!ENTITY gcc2-download-ftp "ftp://ftp.gnu.org/gnu/gcc/gcc-&gcc2-version;.tar.gz">
<!ENTITY gcc2-download-http "http://ftp.gnu.org/gnu/gcc/gcc-&gcc2-version;.tar.gz">
<!ENTITY gcc2-size "7 MB">
<!ENTITY gcc2-time "">