added gcc2, removed gcc2libs

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@790 af4574ff-66df-0310-9fd7-8a98e5e911e0
This commit is contained in:
Tushar Teredesai 2003-03-31 21:48:11 +00:00
parent 815fed501e
commit 3b03fa57d1
14 changed files with 127 additions and 20 deletions

View File

@ -19,7 +19,6 @@
<!ENTITY % guile SYSTEM "genlib/guile/guile.ent">
<!ENTITY % slib SYSTEM "genlib/slib/slib.ent">
<!ENTITY % gwrap SYSTEM "genlib/gwrap/gwrap.ent">
<!ENTITY % gcc2lib SYSTEM "genlib/gcc2lib/gcc2lib.ent">
<!ENTITY % STLport SYSTEM "genlib/STLport/STLport.ent">
%openssl;
%pcre;
@ -38,7 +37,6 @@
%guile;
%slib;
%gwrap;
%gcc2lib;
%STLport;
<!-- Graphics Libraries -->
@ -95,6 +93,7 @@
<!ENTITY % ruby SYSTEM "prog/ruby/ruby.ent">
<!ENTITY % gnat SYSTEM "prog/gnat/gnat.ent">
<!ENTITY % gcc SYSTEM "prog/gcc/gcc.ent">
<!ENTITY % gcc2 SYSTEM "prog/gcc2/gcc2.ent">
%python;
%perl-modules;
%librep;
@ -102,3 +101,4 @@
%ruby;
%gnat;
%gcc;
%gcc2;

View File

@ -1,12 +0,0 @@
<sect1 id="gcc2lib" xreflabel="gcc2lib-&gcc2lib-version;">
<?dbhtml filename="gcc2lib.html" dir="general"?>
<title>gcc2lib-&gcc2lib-version;</title>
&gcc2lib-intro;
&gcc2lib-inst;
&gcc2lib-exp;
&gcc2lib-config;
&gcc2lib-desc;
</sect1>

View File

@ -51,6 +51,5 @@ them.</para>
&guile;
&slib;
&gwrap;
&gcc2lib;
&STLport;
</chapter>

11
general/prog/gcc2.xml Normal file
View File

@ -0,0 +1,11 @@
<sect1 id="gcc2" xreflabel="gcc2-&gcc2-version;">
<?dbhtml filename="gcc2.html" dir="general"?>
<title>gcc2-&gcc2-version;</title>
&gcc2-intro;
&gcc2-inst;
&gcc2-config;
&gcc2-desc;
</sect1>

View File

@ -0,0 +1,21 @@
<sect2>
<title>Configuring gcc2</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>
<para>If you only need the gcc2 libraries, you may delete /opt/gcc2.</para>
<para>Whenever you need to use gcc2 instead of you system installed compiler,
add <userinput>/opt/gcc2/bin</userinput> to the front of your PATH before compiling the concerned
package.</para>
</sect3>
</sect2>

View File

@ -0,0 +1,10 @@
<sect2>
<title>Contents</title>
<para>The gcc2 package contains the <userinput>gcc2 c and c++ compilers</userinput>
and <userinput>gcc2
libstdc++.so</userinput> that is required by some commercial and pre-compiled
packages.</para>
</sect2>

View File

@ -0,0 +1,44 @@
<sect2>
<title>Installation of gcc2</title>
<para>Apply the two patches, one to fix compilation and the other to stop the
fixincludes script from executing.</para>
<para><screen><userinput>patch -Np1 -i ../gcc-&gcc2-version;-1.patch &amp;&amp;
patch -Np1 -i ../gcc-&gcc2-version;-no-fixinc.patch</userinput></screen></para>
<para>The gcc development team recommends building in a seperate directory.</para>
<para><screen><userinput>mkdir ../gcc-build &amp;&amp;
cd ../gcc-build</userinput></screen></para>
<para>Configure gcc to build the c and c++ compilers and enable the related c++
options.</para>
<para><screen><userinput>../gcc-&gcc2-version;/configure \
--prefix=/opt/gcc2 \
--enable-shared --enable-languages=c,c++ \
--enable-threads=posix</userinput></screen></para>
<para>Compile and install gcc and remove unneeded directories (adjust the
machine triplet to match your architecture).</para>
<para><screen><userinput>make bootstrap &amp;&amp;
make install &amp;&amp;
ln -sf gcc /opt/gcc2/bin/cc &amp;&amp;
rm -rf /opt/gcc2/{i686-pc-linux-gnu,info,man}</userinput></screen></para>
<para>Make note of the library that is installed.</para>
<para><screen><userinput>L=`find /opt/gcc2/lib -name "*libstdc++*.so" -type f` &amp;&amp;
IL=`basename $L`</userinput></screen></para>
<para>Move the c++ libraries to the standard lib directory to avoid having to
add /opt/gcc2/lib to <userinput>/etc/ld.so.conf</userinput>.</para>
<para><screen><userinput>for i in /opt/gcc2/lib/*.so*; do mv -f $i /usr/lib;
ln -sf /usr/lib/`basename $i` /opt/gcc2/lib; done</userinput></screen></para>
<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;
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>
</sect2>

View File

@ -0,0 +1,19 @@
<sect2>
<title>Introduction to gcc2-&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 gcc2. The first is that the kernel
developers have certified gcc2 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 gcc2 libs.</para>
<para>Download the gcc patches from <ulink url="&hfile-root;"/>.
</para>
</sect2>

View File

@ -0,0 +1,11 @@
<!ENTITY gcc2 SYSTEM "../gcc2.xml">
<!ENTITY gcc2-intro SYSTEM "gcc2-intro.xml">
<!ENTITY gcc2-inst SYSTEM "gcc2-inst.xml">
<!ENTITY gcc2-desc SYSTEM "gcc2-desc.xml">
<!ENTITY gcc2-config SYSTEM "gcc2-config.xml">
<!ENTITY gcc2-buildsize "104 MB">
<!ENTITY gcc2-version "2.95.3">
<!ENTITY gcc2-download-ftp "ftp://ftp.gnu.org/gnu/gcc/gcc-&gcc2-version;.tar.gz">
<!ENTITY gcc2-size "7 MB">

View File

@ -43,6 +43,6 @@ restrictions, blackdown has a gcc3 based precompiled version.
Check out <ulink url="http://www.blackdown.org/"/> for more information.</para>
<screen>j2sdk depends on:
<xref linkend="xfree86"/>, <xref linkend="zip"/>, <xref linkend="unzip"/>, <xref linkend="cpio"/>, <xref linkend="tcsh"/>, <xref linkend="gcc2lib"/></screen>
<xref linkend="xfree86"/>, <xref linkend="zip"/>, <xref linkend="unzip"/>, <xref linkend="cpio"/>, <xref linkend="tcsh"/>, <xref linkend="gcc2"/></screen>
</sect2>

View File

@ -9,5 +9,6 @@
&ruby;
&gnat;
&gcc;
&gcc2;
</chapter>

View File

@ -2,8 +2,8 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"/usr/share/docbook/docbookx.dtd" [
<!ENTITY version "20030330">
<!ENTITY releasedate "March 30th, 2003">
<!ENTITY version "20030331">
<!ENTITY releasedate "March 31th, 2003">
<!ENTITY % book SYSTEM "book/book.ent">
<!ENTITY % preface SYSTEM "preface/preface.ent">

View File

@ -10,6 +10,9 @@ page in Chapter 1 for details on who wrote what.</para>
<itemizedlist>
<listitem><para>March 31th, 2003 [tushar]: prog: removed gcc2libs, added
complete gcc suite.</para></listitem>
<listitem><para>March 30th, 2003 [tushar]: j2sdk: updated jdk to
1.4.1_02.</para></listitem>

View File

@ -91,7 +91,7 @@ gtk-thinice-engine, eel, imlib, intltool,
lame, libao, libart_lgpl, libbonobo, libbonoboui, libgail-gnome,
libglade2, libgnome, libgnomecanvas, libgnomeprint, libgnomeprintui,
libgnomeui, libgtkhtml, libgtop, libIDL, libogg, librep, librsvg,
libvorbis, libwnck, libxml2, libxslt, linc, LPRng, Lunux_PAM,
libvorbis, libwnck, libxml2, libxslt, linc, LPRng, Linux_PAM,
metacity, MPlayer, mutt, nautilus, nautilus-media, oaf, OpenJade, OpenSP,
OpenSSH, ORBit, ORBit2, pan, Pango, pccts, pcre, pkgconfig, postfix,
procmail, Python, QT, rep-gtk, ruby, sawfish, scrollkeeper, sgml-common,
@ -184,7 +184,7 @@ developed.</para></listitem>
so many times (I thought my four was a lot) and being very helpful with
his comments on that section.</para></listitem>
<listitem><para><emphasis>Ted Riley</emphasis> for writing the Linxu-PAM
<listitem><para><emphasis>Ted Riley</emphasis> for writing the Linux-PAM
+ CrackLib + Shadow hint on which reinstalling shadow to use PAM is
based.</para></listitem>