1、下载源码
http://mirror.hust.edu.cn/gnu/gcc/ http://mirrors.nju.edu.cn/gnu/gcc/ http://mirrors.ustc.edu.cn/gnu/gcc/ https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/
解压后进入目录
3、执行./contrib/download_prerequisites,下载三个需要的依赖包,可以打开脚本看看。不要中断过程,等一会儿。
4.安装和下载取决于包
4.1安装gmp
cd gmp sudo mkdir build cd build sudo ../configure --prefix=/usr/local/gcc/gmp-4.3.2
make -j20 && make install
4.2安装mpfr
cd mpfr
sudo mkdir build
cd build
sudo ../configure --prefix=/usr/local/gcc/mpfr-2.4.2 --with-gmp=/usr/local/gcc/gmp-4.3.2
make -j20 && make install
4.3安装mpc
cd mpc sudo mkdir build cd build sudo ../configure --prefix=/usr/local/gcc/mpc-0.8.1 --with-mpfr=/usr/local/gcc/mpfr-2.4.2 --with-gmp=/usr/local/gcc/gmp-4.3.2
make -j20 && make install
5、vim /etc/ld.so.conf,写下三个包的安装路径,我的是
/opt/gcc/7.3.0/gmp-6.1.0/lib /opt/gcc/7.3.0/mpc-1.0.3/lib /opt/gcc/7.3.0/mpfr-3.1.4/lib
6、回到gcc主目录,mkdir build && cd build
sudo ../configure --prefix=/usr/local/gcc --enable-threads=posix --disable-checking --enable-languages=c,c --disable-multilib
注:如有必要gfortran,需要写成:--enable-languages=c,c ,fortran
参数解释: –prefix=--prefix=/home/gcc11 (指定安装路径) –enable-checking=release (在编译过程中增加一些检查) –disable-multilib ( 默认取消多目标库编译和32位库编译enable-multilib) –enable-languages=c,c (编译器支持编译的语言) –enable-bootstrap (冗余编译检查)
make && make install
安装完成