KylinV10Server 编译安装GCC 5.3.0

背景介绍:

操作系统自带的gcc4.8.5版本过低,导致某些动态库跟需求不符,故需升级到gcc5.3.0版本。

正文:

安装依赖库

GCC依赖于gmp 4.2+, mpfr 2.4+和mpc 0.8+,这里直接下载安装最新的版本。

为了省事,所有的库都直接装到/usr/local目录下的对应目录。(不要在生产环境上这么干)

安装gmp 6.0

1 wget https://gmplib.org/download/gmp/gmp-6.0.0a.tar.bz2
2 tar xvf gmp-6.0.0a.tar.bz2
3 cd gmp-6.0.0
4 ./configure
5 make -j4
6 make check
7 make install

安装mpfr 3.1.3

mpfr依赖于gmp。
wget http://www.mpfr.org/mpfr-current/mpfr-3.1.3.tar.bz2
tar xvf mpfr-3.1.3.tar.bz2
cd mpfr-3.1.3
./configure --with-gmp-include=/usr/local/include 
    --with-gmp-lib=/usr/local/lib
make -j4
make check
make install

安装mpc 1.0.3

 1 mpc依赖于gmp和mpfr。
 2 wget ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
 3 tar xvf mpc-1.0.3.tar.gz
 4 cd mpc-1.0.3
 5 ./configure --with-mpfr-include=/usr/local/include 
 6     --with-mpfr-lib=/usr/local/lib 
 7     --with-gmp-include=/usr/local/include 
 8     --with-gmp-lib=/usr/local/lib
 9 make -j4
10 make check
11 make install

安装GCC

 1 下载GCC并解压。 
2
3 wget ftp://ftp.gnu.org/gnu/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2 4 tar xvf gcc-5.2.0.tar.bz2 5 cd gcc-5.2.0 6 先unset若干个系统变量,以免出现某些宏找不到的情况。 7 8 unset CPLUS_INCLUDE_PATH LIBRARY_PATH 9 配置GCC 10 11 ./configure 12 --with-gmp-include=/usr/local/include 13 --with-gmp-lib=/usr/local/lib 14 --with-mpfr-include=/usr/local/include 15 --with-mpfr-lib=/usr/local/lib 16 --with-mpc-include=/usr/local/include 17 --with-mpc-lib=/usr/local/lib 18 --enable-languages=c,c++ 19 --enable-threads=posix 20 --disable-multilib21 22 然后make -j8,启用多线程编译。

测试

1 先安装dejagnu: yum install dejagnu。
2 
3 然后运行如下命令:
4 
5 make -j8 check-gcc
6 查看测试结果:
7 
8 ./contrib/test_summary

安装

1 如果编译顺利通过,make install即可。
2 
3 gcc和g++默认被安装到/usr/local/bin目录下,libgcc和libstdc++默认被安装到/usr/local/lib64(x64)。
4 
5 记得更下下动态库缓存。
6 
7 ldconfig

注意事项:

如果遇到wget下载链接失效的情况,可以自行到国内源下载。

这里我给个自己常用的mirror:华中科技大学开源镜像站

原文地址:https://www.cnblogs.com/chenshengkai/p/13518539.html