【Linux】CentOS7.6 升级 gcc/g++
距离上次更新本文已经过去了 730 天,文章部分内容可能已经过时,请注意甄别
CentOS 7.6
升级 gcc/g++ 的方法,不一定适用于其他 linux 系统
1. 查看版本
plaintext
1 | g++ -v |
当前查看版本,发现是 4.8.5
,这已经是 2015 年的旧版本了,对 c++11
的支持不是很完善,为了方便学习和编写新版本的代码,升级一下还是可以的
如果你的系统上没有 gcc/g++,则尝试用下面的方法安装
plaintext
1 | yum install -y gcc gcc-c++ |
示例
plaintext
1 | [root@bt-7274:~]# yum install -y gcc gcc-c++ |
2. 升级
plaintext
1 | yum list dev\*gcc |
用这个命令查看可以安装的版本有哪些
可以看到最新版本已经是 11 了,那我们就直接安装最新版本的吧
plaintext
1 | yum install devtoolset-11-gcc devtoolset-11-gcc-c++ |
plaintext
1 | Installed: |
看到 complete
就代表安装 over 了
3. 生效
现在要做的就是让新安装的版本生效
plaintext
1 | source /opt/rh/devtoolset-11/enable |
不过这样做,只能在当前 bash 生效,新建一个 bash 就会发现还是 4.8.5
。要做的就是吧这个语句写入 bashrc 的配置文件中,让每次新建 bash 的时候自动执行一次就 OK 了
要修改的是 /etc/bashrc
,强烈建议修改之前先备份一下
plaintext
1 | cp /etc/bashrc ~/bashrc.bak |
随后执行下面俩命令
plaintext
1 | echo "source /opt/rh/devtoolset-11/enable" >> /etc/bashrc |
现在就 OK 了,新建一个 bash,再 gcc -v
,发现已经是新版本了
4. 关于 man 失效问题
升级了版本后,可能导致 man 手册失效。这是因为 man 的环境变量被修改了
plaintext
1 | # echo $MANPATH |
如果你需要使用 man 命令,则还需要重新修改一下 MANPATH
环境变量
plaintext
1 | export MANPATH=/usr/share/man |
解决参考 man 什么都搜不了的解决方案
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 慕雪的寒舍!
评论
表情图片预览
0 条评论
- 最新
- 最热
- 最早
- 作者
关闭评论
通知中心
「此时无声胜有声」
Artalk ErrorTypeError: Failed to fetch,无法获取评论列表数据
点击重新获取 | 打开控制台
点击重新获取 | 打开控制台