1. 程式人生 > 其它 >CentOS 7升級gcc版本

CentOS 7升級gcc版本

轉載:https://www.cnblogs.com/jixiaohua/p/11732225.html

Centos 7預設gcc版本為4.8,有時需要更高版本的,這裡以升級至8.3.1版本為例,分別執行下面三條命令即可,無需手動下載原始碼編譯

1、安裝centos-release-scl

sudo yum install centos-release-scl

2、安裝devtoolset,注意,如果想安裝7.*版本的,就改成devtoolset-7-gcc*,以此類推

sudo yum install devtoolset-8-gcc*

3、啟用對應的devtoolset,所以你可以一次安裝多個版本的devtoolset,需要的時候用下面這條命令切換到對應的版本

scl enable devtoolset-8 bash

大功告成,檢視一下gcc版本

gcc -v

顯示為gcc version 8.3.1 20190311 (Red Hat 8.3.1-3) (GCC)

補充:這條啟用命令只對本次會話有效,重啟會話後還是會變回原來的4.8.5版本,要想隨意切換可按如下操作。

首先,安裝的devtoolset是在 /opt/sh 目錄下的,如圖

每個版本的目錄下面都有個 enable 檔案,如果需要啟用某個版本,只需要執行

source ./enable

所以要想切換到某個版本,只需要執行

source /opt/rh/devtoolset-8/enable

可以將對應版本的切換命令寫個shell檔案放在配了環境變數的目錄下,需要時隨時切換,或者開機自啟

4、直接替換舊的gcc

舊的gcc是執行的 /usr/bin/gcc,所以將該目錄下的gcc/g++替換為剛安裝的新版本gcc軟連線,免得每次enable

mv /usr/bin/gcc /usr/bin/gcc-4.8.5 ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc mv /usr/bin/g++ /usr/bin/g++-4.8.5 ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++ gcc --version g++ --version