centos7 升级 gcc 版本
piaoling 2023-11-10 10:19:45
entOS 7官方源的gcc最新版本是4.8.5,发布于2015年,年代久远且不支持c++14。要编译c++14及以上项目,必须要升级现有版本或者安装高版本的gcc。红帽其实已经编译好了高版本的gcc,但未更新到base和epel这两个常用源中,而是将这些版本放在scl中。
1、安装centos-release-scl
sudo yum install centos-release-scl
##列出GCC版本
yum list |grep devtoolset |grep gcc.x86_64
2、 安装devtoolset,
注意,如果想安装7.版本的,就改成devtoolset-7,以此类推
sudo yum install devtoolset-8*
3、 激活对应的devtoolset,
所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本
# 官方推荐的加载命令 scl enable devtoolset-8 bash ----------- # 第2种 执行安装软件自带的脚本,可以写入启动脚本中 source /opt/rh/devtoolset-x/enable #x为要启用的版本。
gcc -v
这条激活命令只对本次会话有效,重启会话后还是会变回原来的4.8.5版本,要想随意切换可按如下操作首先,安装的devtoolset是在/opt/rh目录下的,
每个版本的目录下面都有个 enable 文件,如果需要启用某个版本,只需要执行
source ./enable
4、 直接替换旧的gcc
旧的gcc是运行的/usr/bin/gcc
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
升级 cmake
3.1 获取CMake源码包
wget https://cmake.org/files/v3.16/cmake-3.16.9.tar.gz
3.2 解压
tar xvzf cmake-3.16.9.tar.gz
3.3 编译安装
cd cmake-3.16.9/ ./bootstrap --prefix=/usr/local/cmake make -j4 # 卸载旧版本 yum remove cmake -y make install
3.4 配置
vi /etc/profile #增加一行: export PATH=$PATH:/usr/local/cmake/bin
发表评论(评论将通过邮件发给作者):