系統:CentOS Linux release 7.9.2009 (Core)
1、通過yum安裝GCC 默認版本,一般版本比較低。
yum -y install gcc
yum -y install gcc-c++
2.驗證GCC是否安裝成功
gcc -v
3.升級GCC到最新版本11.2.0
背景: 由於一些依賴於GCC的最新版本應用對GCC的版本也有要求,默認安裝的GCC版本,可能無法滿足。
例如redis 最新版 redis.6.2.6 ,低版本gcc可能導致redis編譯無法成功。
1)下載最新源碼並解壓
各個版本現在地址:http://ftp.gnu.org/gnu/gcc/
wget http://ftp.gnu.org/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.gz tar -zxvf gcc-11.2.0.tar.gz
2)下載依賴及配置文件
yum -y install bzip2 #已安裝可以跳過這一步 cd gcc-11.2.0 ./contrib/download_prerequisites
3)配置
mkdir build cd build/ ../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib #–enable-languages表示你要讓你的gcc支持那些語言, #–disable-multilib不生成編譯為其他平台可執行代碼的交叉編譯器。 #–disable-checking生成的編譯器在編譯過程中不做額外檢查, #也可以使用*–enable-checking=xxx*來增加一些檢查
4)編譯
make #這一步需要時間非常久 可以使用 make -j 4 讓make最多運行四個編譯命令同時運行,加快編譯速度(建議不要超過CPU核心數量的2倍)
5)安裝
make install
6)驗證gcc版本
gcc -v Using built-in specs. COLLECT_GCC=/usr/local/bin/gcc COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-pc-linux-gnu/11.2.0/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib Thread model: posix Supported LTO compression algorithms: zlib gcc version 11.2.0 (GCC) 驗證:gcc -v;或者g++ -v,如果顯示的gcc版本仍是以前的版本,就需要重啟系統; 或者可以查看gcc的安裝位置:which gcc; 然后在查看版本 /usr/local/bin/gcc -v 確定以及配置成功后可以將原先的版本刪除
成功升級到目前最新11.2.0
借鑒:http://ftp.gnu.org/gnu/gcc/
https://www.cnblogs.com/langkyeSir/p/13890734.html