概要
scl を用いて古い CentOS (7.3)に,新しい GCC (11)をインストールする方法を説明します.
SCL
Rehhat scl (SOFTWARE COLLECTIONS)を用いれば,yumの標準パッケージより新しいバージョンのソフトウェアをインストールできます.
インストール方法
sclのインストール
sudo yum -y install centos-release-scl centos-release-scl-rh
sclで提供されている GCC のバージョンの確認
yum list | grep devtoolset | grep gcc
gcc 7から11が提供されていることが分かります.
GCC 11のインストール
yum install -y devtoolset-11-gcc devtoolset-11-gcc-c++ devtoolset-11-binutils
GCC 11が有効な状態でbashを起動
scl enable devtoolset-11 bash
gcc --version
上記の様に,「GCC 11が有効なbash」の上では,GCC 11が使えます.
動作確認
通常のshell (bash)の上で gcc を起動すると,gcc 4.8.5 が起動します.
「GCC 11が有効なbash」の上で gcc を起動すると,gcc 11.2.1 が起動します.
「GCC 11が有効なbash」をexitで終了して,
再度 通常のshell (bash)の上で gcc を起動すると,gcc 4.8.5 が起動します.
「GCC 11が有効な状態」で gcc を起動すると,やはり gcc 11.2.1 が起動します.