- 因為項目需要, 需要高版本的GCC, 所幸自己編譯配置了一遍GCC 7.1.0
- 記錄在此, 方便以后再用
- 也適用于GCC的其他版本
下載--
https://gcc.gnu.org/解壓
tar -zxvf gcc-7.1.0.tar.gz進入源碼目錄
下載依賴
./contrib/download_prerequisites
視網絡情況, 可能需要重試, 其實也可以手動下載建立編譯輸出目錄
mkdir build進入輸出目錄, 編譯
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
make
make install
其中 --disable-multilib這個是交叉編譯功能, 比如希望在64位系統下也能編譯出32位的程序
最后會將gcc安裝到 /usr/local/bin/gcc
- 建軟鏈:
最好是把/usr/bin下面的gcc和g++先備份
cd /usr/bin
ln -s /usr/local/bin/gcc gcc
ln -s /usr/local/bin/g++ g++
- 更換新ibstdc++庫
cp ./gcc-build-7.1.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.23 /usr/lib64/
cd /usr/lib64/
rm -rf libstdc++.so.6
ln -s /usr/lib64/libstdc++.so.6.0.23 libstdc++.so.6