linux安装gcc命令步骤(centos安装gcc命令)[通俗易懂]

linux安装gcc命令步骤(centos安装gcc命令)[通俗易懂]linux安装gcc命令步骤(centos安装gcc命令)>一、前言本文介绍在CentOS7.8系统下使用YUM升级GCC版本的相关操作步骤。CentOS7默认安装的gcc版本是4.8版本,gcc4.8最主要的一个特性就是全面支持C++11,如果不清楚什么用的也没关系,简单说一些C++11标准的程序都需要gcc4.8以上版本的gcc编译器编译。很多工具依赖的是更高版本的gcc,比如编译MySQL8.0(8.0.16以上版本是C++14标准,需gcc5.3以上版本)、Redis6.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

linux安装gcc命令步骤(centos安装gcc命令)

>一、前言

本文介绍在CentOS7.8系统下使用YUM升级GCC版本的相关操作步骤。

CentOS7默认安装的gcc版本是4.8版本,gcc 4.8最主要的一个特性就是全面支持C++11,如果不清楚什么用的也没关系,简单说一些C++11标准的程序都需要gcc 4.8以上版本的gcc编译器编译。很多工具依赖的是更高版本的gcc,比如编译MySQL 8.0(8.0.16以上版本是C++14标准,需gcc 5.3以上版本)、Redis 6.0.x、GRPC等。手动编译升级gcc往往耗时长,而且不一定能成功,使用devtoolset 可以快速切换gcc版本。

采用CentOS的一个第三方库SCL(软件选集)的 devtoolset ,SCL可以在不覆盖原系统软件包的情况下安装新的软件包与老软件包共存并且可以使用scl命令切换,不过也有个缺点就是只支持64位的。

官网:https://gcc.gnu.org/

源码包下载:
http://ftp.gnu.org/gnu/gcc

特别说明:

  • 目前第三方库SCL还没有gcc 11.x以上版本的YUM源,若要升级为11.x以上的版本需要通过源码编译安装。
  • 第三方库SCL的devtoolset-6版本已经结束支持,只能通过源码编译安装升级gcc 6.x。
  • 第三方库SCL的devtoolset-4及devtoolset-3版本(即gcc 5.x 和 4.9.2版本)已经结束支持,只能通过其他方法安装升级gcc 5.x 和 4.9.2。
  • 若是在RHEL系统上升级GCC,安装第三方库SCL后需为系统启用RHSCL存储库,使用命令:

yum-config-manager --enable rhel-server-rhscl-7-rpms

二、查看系统默认GCC版本

gcc -v

linux安装gcc命令步骤(centos安装gcc命令)(图1)

三、升级为10.2.1版本

## 安装第三方SCL源仓库

yum -y install centos-release-scl

## 安装gcc 10.2.1 的版本

yum -y install devtoolset-10-gcc* 或 yum -y install devtoolset-10-gcc devtoolset-10-gcc-c++ devtoolset-10-binutils

## 激活gcc 10.2.1

scl enable devtoolset-10 bash

## 验证

gcc -v

linux安装gcc命令步骤(centos安装gcc命令)(图2)

四、升级为9.3.1版本

## 安装第三方SCL源仓库

yum -y install centos-release-scl

## 安装gcc 9.3.1 的版本

yum -y install devtoolset-9-gcc* 或 yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils

## 激活gcc 9.3.1

scl enable devtoolset-9 bash

## 验证

gcc -v

linux安装gcc命令步骤(centos安装gcc命令)(图3)

## 需要注意的是使用scl命令激活启用gcc只是临时的,退出当前shell环境或重启系统就会恢复为原来的gcc版本。若要想一直使用升级后的gcc版本,可配置系统环境变量,使用如下命令:

echo \"source /opt/rh/devtoolset-9/enable\" >> /etc/profile source /etc/profile

五、升级为8.3.1版本

## 安装第三方SCL源仓库

yum -y install centos-release-scl

## 安装gcc 8.3.1 的版本

yum -y install devtoolset-8-gcc* 或 yum -y install devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-binutils

## 激活gcc 8.3.1

scl enable devtoolset-8 bash

## 验证

gcc -v

linux安装gcc命令步骤(centos安装gcc命令)(图4)

## 需要注意的是使用scl命令激活启用gcc只是临时的,退出当前shell环境或重启系统就会恢复为原来的gcc版本。若要想一直使用升级后的gcc版本,可配置系统环境变量,使用如下命令:

echo \"source /opt/rh/devtoolset-8/enable\" >> /etc/profile source /etc/profile

六、升级为7.3.1版本

## 安装第三方SCL源仓库

yum -y install centos-release-scl

## 安装gcc 7.3.1 的版本

yum -y install devtoolset-7-gcc* 或 yum -y install devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-binutils

## 激活gcc 7.3.1

scl enable devtoolset-7 bash

## 验证

gcc -v

linux安装gcc命令步骤(centos安装gcc命令)(图5)

## 需要注意的是使用scl命令激活启用gcc只是临时的,退出当前shell环境或重启系统就会恢复为原来的gcc版本。若要想一直使用升级后的gcc版本,可配置系统环境变量,使用如下命令:

echo \"source /opt/rh/devtoolset-7/enable\" >> /etc/profile source /etc/profile

七、升级为5.2.1版本

## 安装软件源

wget -O /etc/yum.repos.d/hhorak-devtoolset-4-rebuild-bootstrap-epel-7.repo https://copr.fedorainfracloud.org/coprs/hhorak/devtoolset-4-rebuild-bootstrap/repo/epel-7/hhorak-devtoolset-4-rebuild-bootstrap-epel-7.repo 或 wget -O /etc/yum.repos.d/hhorak-devtoolset-4-rebuild-bootstrap-epel-7.repo https://copr.fedorainfracloud.org/coprs/hhorak/devtoolset-4-rebuild-bootstrap2/repo/epel-7/hhorak-devtoolset-4-rebuild-bootstrap2-epel-7.repo yum makecache fast

## 安装gcc 5.2.1 的版本

yum -y install devtoolset-4-gcc* 或 yum -y install devtoolset-4-gcc devtoolset-4-gcc-c++ devtoolset-4-binutils

## 激活gcc 5.2.1

scl enable devtoolset-4 bash

## 验证

gcc -v

linux安装gcc命令步骤(centos安装gcc命令)(图6)

## 需要注意的是使用scl命令激活启用gcc只是临时的,退出当前shell环境或重启系统就会恢复为原来的gcc版本。若要想一直使用升级后的gcc版本,可配置系统环境变量,使用如下命令:

echo \"source /opt/rh/devtoolset-4/enable\" >> /etc/profile source /etc/profile

八、升级为4.9.2版本

注:其实也没必要升级,CentOS7系统默认安装的是4.8.5,同为大版本4,功能作用应相差无几。

## 安装软件源

wget -O /etc/yum.repos.d/rhscl-devtoolset-3-el7-epel-7.repo https://copr.fedorainfracloud.org/coprs/rhscl/devtoolset-3-el7/repo/epel-7/rhscl-devtoolset-3-el7-epel-7.repo yum makecache fast

## 安装gcc 4.9.2 的版本

yum -y install devtoolset-3-gcc* 或 yum -y install devtoolset-3-gcc devtoolset-3-gcc-c++ devtoolset-3-binutils

## 激活gcc 4.9.2

scl enable devtoolset-3 bash

## 验证

gcc -v

linux安装gcc命令步骤(centos安装gcc命令)(图7)

## 需要注意的是使用scl命令激活启用gcc只是临时的,退出当前shell环境或重启系统就会恢复为原来的gcc版本。若要想一直使用升级后的gcc版本,可配置系统环境变量,使用如下命令:

echo \"source /opt/rh/devtoolset-3/enable\" >> /etc/profile source /etc/profile

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183468.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • h3c路由器配置nat转换命令_路由器nat地址转换配置

    h3c路由器配置nat转换命令_路由器nat地址转换配置#NAT的配置第一步,使用ACL来定义,需要做转换的源地址acladvanced6002rule2permitipsource192.168.55.00.0.0.255#NAT的配置第二步:用address-group来定义,希望转成什么公网地址nataddress-group1address192.168.88.155192.168.88.155natoutbound6002#NAT的配置第三步:在路由器的出接口,启用NAT参考资料:一看…

    2022年10月17日
    4
  • Android开发之activity跳转页面失败的问题

    Android开发之activity跳转页面失败的问题今天做地址管理,跳转新建地址页面发现一个问题,这么也跳转不到下一个页面代码如下:/***跳转创建地址页面*/privatevoidcreateAddress(){startActivityForResult(newIntent(this,CreateAddressActivity.class),CREATE_ADDR…

    2022年5月21日
    48
  • 常用的网站后台编辑器

    常用的网站后台编辑器

    2021年11月5日
    51
  • setPositiveButton和setNegativeButton和setNeutralButton

    setPositiveButton和setNegativeButton和setNeutralButtonsetPositiveButton和setNegativeButton和setNeutralButtonsetPositiveButton和setNegativeButton和setNeutralButton三者都是AlertDialog弹出框的按钮,只是显示的位置不同,项目中可根据情况选择使用,setPositiveButton一般用于确认,setNegativeButton一般用于取消,setNeutralButton这个是相当于一个忽略操作的按钮。MainActivity中简单用法代码

    2022年6月16日
    52
  • 什么是pl/sql语句_过程化SQL有三种循环结构

    什么是pl/sql语句_过程化SQL有三种循环结构—认识PL/SQL   ***PL/SQL的使用几乎贯穿于整个Oracle的学习过程,也是作为一个初级开发人员必须掌握的重要知识点。   ***结构化查询语言(SQL)是用来访问和操作关系型数据库的一种标准通用语言,它属于第四代语言(4GL),       简单易学,使用它可以很方便地调用相应的语句来取得结果。该语言的特点就是非过程化。也就是说,使用       的…

    2022年10月11日
    2
  • linux中kill命令详解_linux kill函数

    linux中kill命令详解_linux kill函数linuxkill命令详解一、命令格式:kill[参数][进程号]二、命令功能:发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程。如果任无法终止该程序可用“-KILL”参数,其发送的信号为SIGKILL(9),将强制结束进程,使用ps命令或者jobs命令可以查看进程号。root用户将影响用户的进程,非root用户只能影响自己的进程。三、命令参数:-l信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称-a当处理当前进程时,不

    2025年7月1日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号