背景:在編譯Linux內核的過程中發現GCC版本過低,需要手動安裝下
步驟:
1、進入官網找到gcc對應版本:https://ftp.gnu.org/
下載好安裝包后,解壓進行安裝
cd /usr/local/gcc-10.2.0 ./contrib/download_prerequisites 執行上面命令后 gmp、mpfr、mpc 等依賴包成功下載下來,才能繼續執行下面的安裝步驟
所以需要手動安裝這三個依賴
2、GMP編譯
wget ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2 tar -vxf gmp-5.0.1.tar.bz2 cd gmp-5.0.1/ ./configure --prefix=/usr/local/gmp-5.0.1 make sudo make install
3、MPFR編譯
wget https://ftp.gnu.org/gnu/mpfr/mpfr-3.1.5.tar.xz tar -vxf mpfr-3.1.5.tar.gz cd mpfr-3.1.5/ ./configure --prefix=/usr/local/mpfr-3.1.5 --with-gmp=/usr/local/gmp-5.0.1 make sudo make install
4、mpc編譯
wget http://www.multiprecision.org/downloads/mpc-0.9.tar.gz tar -vxf mpc-0.9.tar.gz cd mpc-0.9/ ./configure --prefix=/usr/local/mpc-0.9 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5 make sudo make install
5、完成以上依賴安裝后,進入GCC的編譯環節,在gcc安裝包的目錄新建一個文件夾gcc-build-10.2.0
[root@bogon local]# mkdir gcc-build-10.2.0 [root@bogon local]# cd gcc-build-10.2.0
由於 GCC 編譯器支持多種編程語言的編譯,而實際情況中我們可能只需要編譯 1~2 種編程語言,因此需要對其進行必要的配置
../configure --prefix=/usr/local/gcc-10.2.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5 --with-mpc=/usr/local/mpc-0.9
6、等makefile文件創建好后,使用make進行編譯,此處耗時會比較長
make make install