gcc 9.3.0 離線安裝
阿新 • • 發佈:2020-09-11
1.下載安裝包
ftp://gnu.mirror.iweb.com/gcc/gcc-9.3.0/gcc-9.3.0.tar.xz
2.解壓
tar xvf gcc-9.3.0.tar.xz
3.安裝
cdgcc-9.3.0
./contrib/download_prerequisites ---此步驟會下載依賴包,如無無法連線外網可通過連結下載
連結:https://pan.baidu.com/s/1JHv1WAS43S89LXA6PkevTg 提取碼:nb35
包名如下
gmp-6.1.0.tar.bz2 mpfr-3.1.4.tar.bz2 mpc-1.0.3.tar.gz isl-0.18.tar.bz2
使用方式:
將包cp到gcc-9.3.0目錄下即可
然後執行
./contrib/download_prerequisites ---與上一步相同無需重複執行 mkdir build cd build ../configure --prefix=/opt/gcc9 --enable-languages=c,c++ --disable-multilib export THREADS=$(grep -c ^processor /proc/cpuinfo) make -j $THREADS make install
編譯所需時間較長=。=
4.後續操作
由於gcc 升級之後會造成類似如下報錯
ninja: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ninja)
解決辦法如下
find / -name "libstdc++.so.6*"
找到系統中版本最搞的gcc目錄,例如此前的安裝目錄
/opt/gcc9/lib64/libstdc++.so.6.0.28 /opt/gcc9/lib64/libstdc++.so.6 /opt/gcc9/lib64/libstdc++.so.6.0.28-gdb.py
備份報錯的 libstdc++.so
mv /lib64/libstdc++.so.6 /lib64/libstdc++.so.6_bak
將高版本的libstdc++複製到/lib64目錄下
cp /opt/gcc9/lib64/libstdc++.so.6 /lib64/libstdc++.so.6 ln -s /opt/gcc9/lib64/libstdc++.so.6.0.28 /lib64/libstdc++.so.6 ----(一般執行上一步就可以了)
驗證
[root@mini test]# ./ninja --version 1.9.0