1. 下载gcc安装包
打开contrib/download_prerequisites查看依赖
可以看到这里要求了四个依赖包:gmp,mpc,mpfr,isl。下载的版本可以不是最新版,但是不能太旧,一般从现在往后退几代就可以了,具体要求gcc的configure时会说明。额外注意如果采用tree编译法要求mpc>=1.0.3。2. 安装准备与配置
下载完成后,将gmp、mpfr、mpc、isl安装放到cd /usr/local/gcc-7.1.0目录下并解压:
tar -xf gmp-6.1.0.tar.bz2
tar -xf mpfr-3.1.4.tar.bz2
tar -xf mpc-1.0.3.tar.gz
tar -xf isl-0.16.1.tar.bz2
建立软连接:
ln -sf gmp-6.1.0 gmp
ln -sf mpfr-3.1.4 mpfr
ln -sf mpc-1.0.3 mpc
ln -sf isl-0.16.1 isl
3. 编译安装:
创建build目录,不要在源码root目录下直接build,否则无法进行树形编译
编译命令
1
2
3../configure --prefix=xxx -enable-checking=release -enable-languages=c,c++ -disable-multilib
make -j
make install #安装到指定的prefix目录下4. 其他编译方式
如果不采用tree编译的方式,那么需要分别编译这几个依赖包,而且顺序固定,依次编译。
gmp安装:
tar jxf gmp-4.3.2.tar.bz2
cd gmp-4.3.2
./configure –prefix=/usr/local/gmp-4.3.2 && make
make install
mpfr安装:
tar jxf mpfr-2.4.2.tar.bz2
cd mpfr-2.4.2
./configure –prefix=/usr/local/mpfr-2.4.2 –with-gmp=/usr/local/gmp-4.3.2 && make
make install
mpc安装:
tar zxvfv mpc-1.0.1.tar.gz
cd mpc-1.0.1
./configure –prefix=/usr/local/mpc-1.0.1 –with-gmp=/usr/local/gmp-4.3.2 –with-mpfr=/usr/local/mpfr-2.4.2 && make
make install
添加环境变量
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gmp-4.3.2/lib:/usr/local/mpc-1.0.1/lib:/usr/local/mpfr-2.4.2/lib
安装gcc-5.4.0
tar -xzvf gcc-5.4.0.tar.gz
cd gcc-5.4.0
mkdir gcc-build //创建编译目录
cd gcc-build
../configure –prefix=/usr/local/gcc-5.4.0 –enable-threads=posix –disable-checking –disable-multilib –enable-languages=c,c++ –with-gmp=/usr/local/gmp-4.3.2 –with-mpfr=/usr/local/mpfr-2.4.2 –with-mpc=/usr/local/mpc-1.0.1 //执行配置
make -j4 //多核编译,过程极其漫长~~~
make install
这种方式我在编译gcc的时候失败了。还是tree编译方法方便
最后更新: 2020年05月03日 22:05
原始链接: https://yang-xiaofeng1101.github.io/2020/03/10/GCC%E7%A6%BB%E7%BA%BF%E5%8D%87%E7%BA%A7/