起因是安装 Redis 需要高版本 gcc,不过,升级一下总是不差的,CentOS 7 自带的gcc版本是4.8.5,过于陈旧。
1. gcc -v # 查看当前gcc版本
2. yum -y install centos-release-scl # 安装centos-release-scl
3. yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils # 安装gcc和g++,binutils有什么用暂不知道,反正是工具,没事的
4. scl enable devtoolset-9 bash # 使高版本 gcc 和 g++ 9 生效
5. gcc -v # 查看版本有没有改变
6. echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile # 将改变写入系统变量,永久生效
SCL(Software Collections)可以让你在同一个操作系统上安装和使用多个版本的软件,而不会影响整个系统的安装包。相当于一个版本控制器。
scl主页:softwarecollections