GCC-Upgrade-mini-HowTo (FINAL)

GCC-Upgrade-mini-HowTo (FINAL)

Post by Kent Robot » Fri, 05 Apr 1996 04:00:00

GCC-Upgrade-mini.HowTo "Trust this, and move into the future." (Kent Robotti)

<Upgrading gcc, libc, binutils, ld, make, ?,>

(Packages, you will need.)
(1). gcc.2.7.2?.bin.elf.tar.gz         <The gcc (c) compiler.>
(2). binutils-     <The latest ? as of this writing.>
(3). libc.5.2.18?.bin.elf.tar.gz       <C Libraries.>    
(4). ld.so-1.7.14?.tar.gz              <The dynamic linker and loader, WHAT?>      
(5). make-3.74-direntfix-elf.tar.gz    <Binary-elf version, of make, that fixes
(6). Optional ? (see below)             a bug, (No rule to make target) you
                                        might experience, after the upgrade.>
(Where to get.)                          
ncftp> open                          
to> ftp.cc.gatech.edu                
ncftp> cd /pub/Linux/GCC               <For packages 1-4.>
ncftp> ls
ncftp> get packages 1-4
ncftp> cd ..                           <Go back one directory.>
ncftp> cd devel/make                   <For make, /pub/Linux/devel/make>
ncftp> ls
ncftp> get make
ncftp> quit
If the directory contents scroll bye to quickly to see, try ls -r
to display them in reverse, or ls | more (one screenfull at a time,
press q to quit. (ls | more, might not work, depends on ?)

Now move all the packages, to /
~/upgrade# mv *gz /                      <This will move all to />
~/upgrade# cd /
/# tar xzvf gcc.2.7.2?.bin.elf.tar.gz    <Begin unpacking, one at a time.>
/# Next binutils
/# Next libc
/# tar xzvf make-3.74-direntfix-elf.tgz  <Unpack and install make.>
/# cd *elf
/make-3.74-bin-elf# mv make /usr/bin     <Move (make-fixed) to /usr/bin,
                                          overwriting old make.>
/# tar xzvf ld.so-1.7.14.tar.gz          <Unpack ld.>  
/# cd *14
/ld.so-1.7.14# instldso.sh               <Install ld.>

Now of course, you can remove all the packages.
/# rm *tar.gz     <Be sure there's nothing else, in the same dir. with
                   the same extension tar.gz, that you want to keep.>
/# rm -r *elf     <To remove make.>
/# rm -r *14      <To remove ld.>

To remove the old 2.7.0 directories.
/# rm -rf /usr/lib/gcc-lib/1486-linux/2.7.0
/# rm -rf /usr/lib/gcc-lib/i486-linuxaout/2.7.0
/# cd /lib
/lib# ln -sf /usr/lib/gcc-lib/i486-linux/2.7.2/cpp cpp    <Create new link
And of course, The "it dose,nt hurt" links, stuff.         for cpp. to point  
/lib# cd /usr/include                                      to 2.7.2/cpp.>
/usr/include# ln -s /usr/src/linux/include/linux linux
            # ln -s /usr/src/linux/include/asm-i386 asm
            # ldconfig -v

If your useing slackware, you can use pkgtool to remove four of these
packages, before you unpack the new ones, (Don't remove ldso.) just
the four below.                                                
~/# pkgtool
Chose (Remove) from the menu, this will take ? BogoMipSeconds.
[x] binutils
[x] gcc270         <Press the space bar to tag them [x] then <Enter>
[x] gmake          <Be sure only these four are tagged [x]>
[x] libc

(Optional packages ?) While your in the neighborhood, try and pick up these  
packages allso, they replace Important programs, that allmost certainly won't
work anymore, after the upgrade.

ncftp> open
to> ftp.cc.gatech.edu
ncftp> cd /pub/Linux/system/Status/ps   <procps-0.99a?.tgz>
ncftp> cd /pub/Linux/kernel             <modules-1.3.57?.tar.gz>