内容简介:CentOS 7官方源带的gcc最新版本是4.8.5,发布于2015年,年代久远且不支持c++14。要编译c++14及以上项目,必须要升级现有版本或者安装高版本的gcc。问题的解决办法主要有两种:手动编译安装(也可以从其他机器拷贝或者网上下载),或从源安装。大多数情况下本人都不推荐从源码编译,因为过程中常会出现各种依赖问题需要人工手动解决,费时(单核编译gcc至少一小时)且耗费精力,并且软件升级还要再来一次,相当的折腾。鉴于此下文介绍从源安装的方法。红帽其实已经编译好了高版本的gcc,但未更新到base和e
CentOS 7官方源带的gcc最新版本是4.8.5,发布于2015年,年代久远且不支持c++14。要编译c++14及以上项目,必须要升级现有版本或者安装高版本的gcc。
问题的解决办法主要有两种:手动编译安装(也可以从其他机器拷贝或者网上下载),或从源安装。大多数情况下本人都不推荐从源码编译,因为过程中常会出现各种依赖问题需要人工手动解决,费时(单核编译gcc至少一小时)且耗费精力,并且软件升级还要再来一次,相当的折腾。鉴于此下文介绍从源安装的方法。
红帽其实已经编译好了高版本的gcc,但未更新到base和epel这两个常用的源中,而是放在 scl
中。第一步便是安装 scl
:
yum install -y centos-release-scl
如果你之前用过 grouplist/install
等命令,应该知道gcc包含在 Development Tools
这个组中。那么 scl
中的gcc/g++软件包的前缀都是 devtoolset
,也就不难理解了。安装gcc 6版本的命令是:
yum install -y devtoolset-6-gcc devtoolset-6-gcc-c++
devtoolset-6
中的gcc版本为gcc 6,除此之外还有如下版本:
- devtoolset-3: gcc 4.9
- devtoolset-4: gcc 5
- devtoolset-6: gcc 6
- devtoolset-7: gcc 7
- devtoolset-8: gcc 8
至于为什么没有devtoolset-5,我也不清楚,估计是包含在devtoolset-4中了吧。值得说明的是这些软件包可以同时安装,不会相互覆盖和冲突,也不会覆盖系统的版本。即可以在系统中同时安装gcc 6, gcc 7, gcc 8等多个版本。
因为不会覆盖系统默认的gcc,使用这些软件的方法有四种:
scl enable devtoolset-x bash source /opt/rh/devtoolset-x/enable
推荐使用最后两种方式,例如启用gcc 6: source /opt/rh/devtoolset-6/enable
,然后输入 gcc -v
查看版本已经变成gcc 6.3.1。使用类似的命令可以随时在多个gcc版本中切换。如果希望长期使用高版本,可将此命令写入 .bashrc
等配置文件。
最后说一下,scl以及scl-rh源中的软件包都安装在/opt/rh/目录下,包含可执行文件、配置等。所以启用命令的路径是 /opt/rh/xxx/enable
,安装的服务重启命令则可能是 systemctl restart rh-xxx
,需要加rh或scl前缀以区别其他源的包。如果你用过remi/gitlab等源,其行为方式也是类似的。
参考
以上所述就是小编给大家介绍的《CentOS 7上升级/安装gcc》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 强化学习基础-对偶梯度上升
- 机器学习笔记(八):随机梯度上升/下降算法调优
- 微软一顿操作猛如虎,PowerShell 排名直线上升
- RedMonk 语言排行:Kotlin 上升 8 位,TS 快进前 10
- RedMonk 语言排行:Kotlin 上升8 位,TS快进前 10
- 你不知道的Node.js性能优化,读了之后水平直线上升
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
高可用MySQL
)Charles Bell Mats Kindahl Lars Thalmann / 宁青、唐李洋 诸云萍 / 电子工业出版社 / 2011-10 / 98.00元
《高可用mysql:构建健壮的数据中心》是“mysql high availability”的中文翻译版,主要讲解真实环境下如何使用mysql 的复制、集群和监控特性,揭示mysql 可靠性和高可用性的方方面面。本书由mysql 开发团队亲自执笔,定位于解决mysql 数据库的常见应用瓶颈,在保持mysql 的持续可用性的前提下,挖潜各种提高性能的解决方案。本书分为三个部分。第一部分讲述mysql......一起来看看 《高可用MySQL》 这本书的介绍吧!