Dear all, I have downloaded the latest version of gcc --- gcc-3.3.1.tar.gz from gnu.org. My Linux distribution is Mandrake 9.0. This was how I installed it:
su -
passwrd:
mkdir /usr/local/src
cd /usr/local/src
gunzip /tmp/gcc-3.3.1.tar.gz #where I downloaded the file
tar xvf /tmp/gcc-3.3.1.tar
cd /opt/build
/usr/local/src/gcc-3.3.1/configure
--prefix=/usr --libdir=/usr/lib --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --enable-long-long --enable-__cxa_atexit --enable-languages=c,c++,ada,f77,objc,java --host=i586-mandrake-linux-gnu --with-system-zlib
make
make install
After I have done all these, I used "which, whereis, -v, and --version" to check the version of GCC.
Quote:
$ which gcc
/usr/bin/gcc
$ whereis gcc
gcc: /usr/bin/gcc3.2-version /usr/bin/gcc /usr/local/bin/gcc /usr/share/man/man1/gcc.1.bz2 /usr/share/man/man1/gcc.1
$ gcc -v
Reading specs from /usr//bin/../lib/gcc-lib/i586-mandrake-linux-gnu/3.3.1/specs
Configured with: /usr/local/src/gcc-3.3.1/configure --prefix=/usr --libdir=/usr/lib --with-slibdir=/lib --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --enable-long-long --enable-__cxa_atexit --enable-languages=c,c++,ada,f77,objc,java --host=i586-mandrake-linux-gnu --with-system-zlib
Thread model: posix
gcc version 3.3.1
$ gcc --version
gcc (GCC) 3.3.1
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$
I can see the system holds two versions of gcc, and if I didn't guess it wrong, the system is still using the old gcc-3.2 as the default.
I have two questions here:
First, how could I set system to use gcc-3.3.1? Someone told me because gcc-3.2 was installed in /usr/bin and gcc-3.3.1 was in /usr/local/bin so I have to change the order in $PATH. I didn't understand that clear, so I went to ~/.bashrc and changed it. But after I rebooted the system, I saw the system was still using gcc-3.2. As a newbie, I hope someone could walk me through it step-by-step or even a little tip will be appreciated.
My second question is about removing the older version of gcc. I don't think I need two versions of gcc in my system since they require space. I want to remove the older version. My Mandrake 9.0 uses rpm to install gcc-3.2 in the system, so I tried to use "rpm -e gcc" to delete the old version. I failed because of the software dependency. Is there any way to remove it and not hurting my other programs have installed in my computer?
Thanx in advanced.
HOUSCOUS