廢話很少說,直接上shell,仍是比較簡單的。就是編譯時間有點長... 都是以小時計的......,我刀片機上面一臺虛擬機反正是等了3個小時linux
#必備組件安裝 yum install -y gcc gcc-c++ bzip2 #root用戶執行,到用戶目錄。其實cd哪裏都闊以。 cd ~/ #下載gcc源代碼 wget https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz #解壓 tar -zxvf gcc-7.3.0.tar.gz #到源代碼目錄 cd gcc-7.3.0 #下載一些必須的東西 ./contrib/download\_prerequisites #若是下載不下來,或者下載緩慢能夠考慮查看命令行拿到下載地址本身down下拉後,放到源代碼目錄。具體地址:ftp://gcc.gnu.org/pub/gcc/infrastructure/,須要下載的幾個源代碼包以下,能夠查看./contrib/download\_prerequisites文件。 gmp='gmp-6.1.0.tar.bz2' mpfr='mpfr-3.1.4.tar.bz2' mpc='mpc-1.0.3.tar.gz' isl='isl-0.16.1.tar.bz2' #接着建立一個目錄,用於gcc build mkdir gcc-build-7.3.0 #cd到build目錄,準備開始編譯了。 cd gcc-build-7.3.0 #編譯的config,disable-multilib 64位編譯標記。具體可查看官方文檔 ../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib #接着就是漫長的編譯等待了 make #不知是否能夠使用make -j8之類的開啓多核編譯是否會快一點,我反正是等了好幾個小時 #next make install #從新創建軟鏈接 find / -name "libstdc++.so*" #找到本身的文件路徑 #把libstdc++.socopy到/usr/lib64目錄,相似下面的命令 cp /root/gcc-7.3.0/gcc-build-7.3.0/x86\_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.24 /usr/lib64 cd /usr/lib64 rm -rf libstdc++.so.6 #刪除原來的 ln -s libstdc++.so.6.0.24 libstdc++.so.6 #從新創建軟連 gcc -v #看看輸出,是否是以下圖變成7.3.0拉。
參考資料:
gcc源代碼下載地址c++