gcc4.4.7升级到gcc4.8.0

来源:互联网 发布:淘宝手办哪家好 编辑:程序博客网 时间:2024/06/02 13:12

看了好多的gcc升级的文档,但是都大同小异的在make的时候报错;

故写此文档已给各位道友一些方便!

1.首先,下载gcc4.8  wget http: //ftp.gnu.org/gnu/gcc/gcc-4.8.0/gcc-4.8.0.tar.bz2

2.解压 tar -jxvf gcc-4.8.0.tar.bz2

cat gcc-4.8.0/contrib/download_prerequisites   

把里面的mpfr,gmp,mpc的包下载下来

wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2

wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.bz2

wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-0.8.1.tar.gz

对三个包都解压编译安装

./configure

make

make install

网上一些都是直接执行./contrib/download_prerequisites 这样的话三个安装包没有安装,所以在make gcc的时候会报错

/usr/local/gcc-4.8.0/gcc/configure: line 10911: ../../gcc-4.8.0/gcc/config.host: No such file or directory 
make[2]: *** [configure-stage1-gcc] Error 1 
make[2]: Leaving directory `/usr/local/gcc-build' 
make[1]: *** [stage1-bubble] Error 2 
make[1]: Leaving directory `/usr/local/gcc-build' 
make: *** [all] Error 2


3.mkdir gcc-build-4.8.0 

cd gcc-build-4.8.0

执行../gcc-4.8.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

注意此处需要配置环境变量

exportLD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

否则会报

configure: error: cannot compute suffix of object files: cannot compile

的错误

make -j32  大概需要等待半小时左右

make install

4.最后检验一下gcc

gcc -v

[root@nod1 gcc-build-4.8.0]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-unknown-linux-gnu/4.8.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.8.0/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
Thread model: posix
gcc version 4.8.0 (GCC)

5.切换GCC到新版,确定新安装的GCC的路径,一般默认在/usr/local/bin下。可以先updatedb,然后locate gcc-4.8|tail找一下
ls /usr/local/bin | grep gcc 添加新GCC到可选项,倒数第三个是名字,倒数第二个参数为新GCC路径,最后一个参数40为优先级,设大一些之后就自动使用新版了
update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc-4.8.0 40


0 0
原创粉丝点击