參考博客:https://baijiahao.baidu.com/s?id=1618088009618054622&wfr=spider&for=pc
我的yum不好使,好使的可以去看yum的教程。
1、下載gcc包
mkdir -p /root/gcc # 創建gcc文件夾
cd /root/gcc
wget -c http://mirror.koddos.net/gcc/releases/gcc-4.8.5/gcc-4.8.5.tar.bz2 # 下載gcc包,網速不夠快就直接該網站下載好再傳到服務器端
2、解壓
tar jxf gcc-4.8.5.tar.bz2 # 根據下載壓縮文件的方式解壓
cd gcc-4.8.5
3、預下載依賴源碼包
./contrib/download_prerequisites # 網不好可能會出做,看下面的解決方法
4、配置編譯文件
./configure --prefix=/opt/gcc --enable-checking=release --enable-languages=c,c++ --disable-multilib # 機器是64位的,就不使用32位的包了,--disable-multilib
5、編譯
make -j8 #如果有多核CPU儘量都用上,要編譯很久,我這裏是8核
6、安裝
make install
7、添加環境變量
echo 'export PATH=/opt/gcc/bin:$PATH' >> /etc/profile
8、生效變量
source /etc/profile
9、查看版本
gcc -v
10、有些代碼裏面還會用到cc這個命令來調用gcc ,而我們自己編譯的目錄下沒有cc這個執行程序,可以做個軟鏈接就可以了。
cd /opt/gcc/bin && ln -s gcc cc
參考博客中可能遇到的問題:
1、wget -c http://mirror.koddos.net/gcc/releases/gcc-4.8.5/gcc-4.8.5.tar.bz2 速度太慢
解決方法:直接去http://mirror.koddos.net/gcc/releases下載自己需要的版本
2、配置時./contrib/download_prerequisites報錯
gmp-6.1.0.tar.bz2: FAILED
sha512sum: WARNING: 1 computed checksum did NOT match
error: Cannot verify integrity of possibly corrupted file gmp-6.1.0.tar.bz2
簡單來說就是網不好,可能下了個不完整的gmp,導致出錯,參考這篇博客:
https://blog.csdn.net/davidhopper/article/details/79681695
實際上我只把gmp的包刪了,然後重下就好了。