1.下载gcc包并解压
configure 进行软件与系统配置
error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+
这说明你电脑少环境 gmp 、mpfr 、mpc (如没出现该错误 恭喜你可以跳过该问题)
gmp 下载地址 ftp://ftp.gnu.org/gnu/gmp/
mpc 下载地址 http://www.multiprecision.org/mpc
mpfr 下载地址 http://ftp.gnu.org/gnu/mpfr/
安装顺序 先安装 gmp 在安装mpfr 再安装mpc
#./configure --prefix=/usr/local/gmp-5.1.2
#make
#sudo make install
#/configure --prefix=/usr/local/mpfr-3.1.2 --with-gmp=/usr/local/gmp-5.1.2
# make
# sudo make install
#./configure --prefix=/usr/local/mpc-1.0.1 --with-mpfr=/usr/local/mpfr-3.1.2 --with-gmp=/usr/local/gmp-5.1.2
# make
# sudo make install
导入环境变量
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gmp-5.1.2/lib:/usr/local/mpfr-3.1.2/lib:/usr/local/mpc-1.0.1/lib
#./configure --prefix=/usr/local/gcc-4.8.1 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++
--with-gmp=/usr/local/gmp-5.1.2 --with-mpfr=/usr/local/mpfr-3.1.2 --with-mpc=/usr/local/mpc-1.0.1
# make
# export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-0.9/lib:/usr/local/gmp-5.0.1/lib:/usr/local/mpfr-2.4.2/lib
# Configure:current value: -g -O2 (这是由于缓存的问题需要把缓存文件产出重新编译)
#make install (完成安装)
配置
GCC 4.7.0的所有文件,包括命令文件(如gcc、g++)、库文件等都在${destdir}目录下分别存放,如命令文件放在bin目录下、库文件在 lib下、头文件在include下等。由于命令文件和库文件所在的目录还没有包含在相应的搜索路径内,所以必须要作适当的设置之后编译器才能顺利地找到并使用它们。
把安装目录的bin放在环境变量PATH中。网上有种 用符号连接的方式实现,这样做的好处是我仍然可以使用系统上原来的旧版本的GCC编译器。
首先,查看原来的gcc所在的路径:
# which gcc
在我的系统上,上述命令显示:/usr/bin/gcc。因此,原来的gcc命令在/usr/bin目录下。
我们可以把GCC 4.7.0中的gcc、g++、gcj等命令在/usr/bin目录下分别做一个符号连接:
# cd /usr/bin
# ln -s /usr/local/gcc-4.7.0/bin/gcc gcc470
# ln -s /usr/local/gcc-4.7.0/bin/g++ g++470
# ln -s /usr/local/gcc-4.7.0/bin/gcj gcj470
这样,就可以分别使用gcc470、g++470、gcj470来调用GCC 4.1.2的gcc、g++、gcj完成对C、C++、JAVA程序的编译了。
同时,仍然能够使用旧版本的GCC编译器中的gcc、g++等命令。
将/usr/local/gcc-4.7.0}/lib路径添加到环境变量LD_LIBRARY_PATH中,
例如,如果GCC 4.7.0安装在/usr/local/gcc-4.7.0目录下,在RH Linux下可以直接在命令行上执行
# export LD_LIBRARY_PATH=/usr/local/gcc-4.7.0/lib
最好添加到系统的配置文件中,这样就不必要每次都设置这个环境变量了,在文件$HOME/.bash_profile中添加下面两句:
LD_LIBRARY_PATH=/usr/local/gcc-4.1.2/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
重启系统设置生效,或者执行命令
# source $HOME/.bash_profile