一、安装linux当前内核版本默认支持的gcc
这个gcc版本可以通过命令cat /proc/version 查看,因为有编译好的安装包,用yum命令安装即可
安装gcc:yum install gcc
安装g++:yum install gcc-c++
二、源码安装gcc-4.1.2
源码安装的前提是系统上已经有gcc、cc等编译器,要不然没法编译
1、下载
wget http://ftp.gnu.org/gnu/gcc/gcc-4.1.2/gcc-4.1.2.tar.bz2
2、解压
tar -jxvf gcc-4.1.2.tar.bz2
3、建立安装目录
mkdir /usr/local/gcc-4.1.2
cd /usr/local/gcc-4.1.2
4、配置
执行源码包里的configure ,假设源码包下载到root目录下
/root/gcc-4.1.2/configure –prefix=/usr/local/gcc-4.1.2 –mandir=/usr/share/man –infodir=/usr/share/info
–enable-shared –enable-threads=posix –enable-checking=release –with-system-zlib –enable-languages=c,c++,objc,objc++,java,fortran,go
选项根据需要来设定,具体参见gcc提供的帮助说明,个人觉得需要注重的是–prefix(安装路径)、–enable-languages(支持的语言)就行。
5、编译
make
6、安装
make install
7、gcc-4.1.2路径设置
因为gcc-4.1.2安装在一个单独目录/usr/local/gcc-4.1.2下,gcc- 4.1.2的所有文件,包括命令文件(gcc、g++)、库文件等都在/usr/local/gcc-4.1.2目录下存放,如命令文件放在bin目录下、库文件在 lib下、头文件在include下等。
现在命令文件和库文件所在的目录还没有包含在相应的搜索路径内,需要设置之后系统才能顺利地找到并使用它们。
(1)命令文件gcc、g++的设置
要想使用GCC 4.1.2的gcc等命令,简单的方法就是把它的路径/usr/local/gcc-4.1.2/bin放在环境变量PATH中。另一种方法是使用软连接的方式实现,这种做法的好处是我仍然可以使用系统上原来的旧版本的gcc编译器。如下:
ln -s /usr/local/gcc-4.1.2/bin/gcc usr/bin/gcc412
ln -s /usr/local/gcc-4.1.2/bin/g++ usr/bin/g++412
使用gcc412、g++412即可调用GCC 4.1.2的gcc、g++对程序进行编译了。同时,仍然能够使用旧版本的gcc编译器中的gcc、g++等命令。当然了,你要是不想使用原来的gcc了,卸载掉,创建软连接的时候覆盖了就行,如下:
ln -s /usr/local/gcc-4.1.2/bin/gcc usr/bin/gcc
ln -s /usr/local/gcc-4.1.2/bin/g++ usr/bin/g++
(2) 库路径的设置
将/usr/local/gcc-4.1.2/lib路径添加到环境变量LD_LIBRARY_PATH中,可以执行如下命令:
export LD_LIBRARY_PATH=/usr/local/gcc-4.1.2/lib
但是这种方法是暂时的,只在当前shell中有效,打开一个新的shell或重新登陆就失效了,要想永久保存设置,需要修改配置文件。可以添加到用户配置文件: ~/.bashrc或~/.bash_profile中(只对单个用户有效);也可以添加到系统配置文件/etc/profile中(对所有用户有效),添加的语句如下:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gcc-4.1.2/lib
重启系统或者执行命令:source ~/.bashrc或source ~/.bash_profile或source /etc/profile,即可生效。
三、源码安装gcc-4.4.7和gcc-4.8.2
安装步骤和安装gcc-4.1.2一样,下载,解压,配置,编译,安装。不过gcc-4.4.7和gcc-4.8.2需要三个依赖库gmp、mpfr、mpc,在配置gcc之前需要安装这三个软件包。