技术分享| gcc版本升级到5.2

news2024/11/14 20:05:36

一、介绍

GCC(GNU Compiler Collection)是一套广泛使用的开源编译器集合,用于编译多种编程语言,包括C、C++、Objective-C、Fortran等。GCC 的不同版本提供了许多新功能、改进和修复,其中包括从 GCC 4.8.5 升级到 GCC 5.2.0 所带来的一些变化。

GCC 5.2.0 是 GCC 5 系列的一个版本,相对于 GCC 4.8.5,它引入了一些重要的改进和功能。以下是一些可能的变化和改进:

  1. C++14 支持:GCC 5.2.0 开始增加对 C++14 标准的支持。这意味着可以使用 C++14 中引入的新特性和语法,如泛型 Lambda 表达式、二进制字面量、变长模板参数包等。
  2. 新的优化和性能改进:GCC 5.2.0 引入了一些新的优化技术和性能改进,可以提高生成的代码的执行效率。这些改进可能包括新的优化策略、针对特定处理器架构的优化、更好的内存管理等。
  3. C11 支持:GCC 5.2.0 开始增加对 C11 标准的支持。C11 是 C 语言的一个新版本,引入了一些新的特性和改进,如线程支持、原子操作、泛型选择表达式等。
  4. 代码质量和警告改进:GCC 5.2.0 可能会引入一些新的代码质量改进和警告机制,帮助开发人员发现潜在的问题和错误。这些改进可能包括更准确的警告、新的代码分析技术等。
  5. 新的语言扩展和特性:GCC 5.2.0 可能引入一些新的语言扩展和特性,以提供更丰富的编程功能和选项。这些扩展可能针对特定的编程语言,如 C、C++、Fortran 等。

二、环境准备

当前版本:gcc version 4.8.5 (GCC)

升级版本:gcc version 5.2.0 (GCC)

## 下载源码包
[root@localhost ~]# yum -y install bzip2 gcc* gdb wget 
[root@localhost ~]# wget http://mirrors.concertpass.com/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2

## 无网情况下手动下载上传到服务器

三、安装依赖

## 解压 
[root@localhost ~]# tar -jxvf gcc-5.2.0.tar.bz2
[root@localhost ~]# cd gcc-5.2.0

## 安装依赖
[root@localhost gcc-5.2.0]# ./contrib/download_prerequisites

无网情况下

1、手动下载download_prerequisites包含的依赖包到gcc-5.2.0目录下

2、修改download_prerequisites文件,把wget相关的注释掉,在执行./contrib/download_prerequisites

四、编译安装

1、配置相关参数

[root@localhost gcc-5.2.0]# mkdir gcc-build-5.2.0
[root@localhost gcc-build-5.2.0]# cd gcc-build-5.2.0
[root@localhost gcc-build-5.2.0]# ../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

2、开始编译,如果是多核服务器最好加上 -j4参数,4代表安装的服务器cpu核数,这里时间较长耐心等待

[root@localhost gcc-build-5.2.0]# make -j4

3、开始安装

[root@localhost gcc-build-5.2.0]# make install

默认库文件存放位置:/usr/local/lib64

默认bin文件存放位置: /usr/local/bin

4、查看最新版本的gcc,如果版本是5.2.0那么就安装成功了,如果没有成功此时可以看下g++ -v ,可以看到已经是5.2.0了

[root@localhost gcc-build-5.2.0]# gcc -v
[root@localhost gcc-build-5.2.0]# g++ -v

如果发现gcc还是老版本,g++是新版本,那么需要重启服务器

[root@localhost gcc-build-5.2.0]# reboot

5、再次查看gcc版本

[root@localhost ~]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/x86_64-unknown-linux-gnu/5.2.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
Thread model: posix
gcc version 5.2.0 (GCC)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1237457.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Proxifier联动BurpSuite抓取小程序

直接上软件包 Proxifier安装包https://pan.quark.cn/s/7fb9ad6deb7cProxifier配置文件https://pan.quark.cn/s/049c5f21c97e 无话可说直接操作 1、安装Proxifier步骤可以省略..... 2、将下面文件导入到Proxifier中 3、左上角文件-导入配置文件(因为我已经导入过…

API之 要求接口上传pdf 以 合同PDF的二进制数据,multpart方式上传

实现 //时间戳13位毫秒private function getMillisecond() {list($s1,$s2) explode( ,microtime());return (float)sprintf(%.0f,(floatval($s1) floatval($s2)) * 1000);}// 组装参数private function gysscPost1($url,$data){// $data[timestamp] 1694402111964;$data[tim…

40、Flink 的Apache Kafka connector(kafka source的介绍及使用示例)-1

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

【剪枝】torch-pruning的基本使用

论文:DepGraph: Towards Any Structural Pruning 工程:https://github.com/VainF/Torch-Pruning 算法和库的使用介绍:CVPR 2023 | DepGraph 通用结构化剪枝 1 TP的简介 该算法介绍了DepGraph 如何建模结构化剪枝中的层依赖,实现任…

Fiddler模拟弱网环境

1.设置弱网:Rules-》Customize Rules 上传速度:1KB/300ms1KB/0.3s3.33KB/s 下载速度:1KB/150ms1KB/0.15s6.67KB/s 2.启动弱网:Rules-》Performance-》Simulate Modem Speeds 开启后,此项为勾选状态 3.验证弱网生效…

Activiti7工作流引擎:生成实时的流程图片

实时获取当前流程对应的流程图片,并对当前正在审批的节点进行高亮显示。 public class ActivitiController {Autowiredprivate ProcessEngine processEngine;Autowiredprivate RepositoryService repositoryService;Autowiredprivate RuntimeService runtimeService…

Vellum —— 简介

目录 一,介绍 二,原理 三,PBD算法 一,介绍 Vellum是一个解算模拟框架,使用更高级的PBD(XPBD,extended position based dynamics),是2nd Order Integration&#xff08…

振南技术干货集:制冷设备大型IoT监测项目研发纪实(4)

注解目录 1.制冷设备的监测迫在眉睫 1.1 冷食的利润贡献 1.2 冷设监测系统的困难 (制冷设备对于便利店为何如何重要?了解一下你所不知道的便利店和新零售行业。关于电力线载波通信的论战。) 2、电路设计 2.1 防护电路 2.1.1 强电防护 …

深兰科技多款大模型技术产品登上新闻联播!

11月20日晚,新闻联播报道了2023中国5G工业互联网大会,深兰科技metamind、汉境大型城市智能体空间等大模型技术和产品在众多参展产品中脱颖而出,被重点播报。 2023中国5G工业互联网大会 本届大会由工信部和湖北省人民政府联合主办,…

D-Wave推出新开源及解决无线信道解码新方案!

​(图片来源:网络) 加拿大量子计算机公司D-Wave(纽约证券交易所股票代码:QBTS)是量子计算系统、软件和服务领域的佼佼者,也是全球首家商业量子计算机供应商。 近期,该公司发布了一…

如何打造适用的MES管理系统解决方案

在当前的制造业领域,项目型生产企业面临着独特的挑战。尽管国外的大型软件公司提供了某些解决方案,但由于地域、文化和制度的差异,这些方案并不完全满足企业的实际需求。为了解决这一难题,我们必须以客户为中心,围绕他…

小程序Tab栏与页面滚动联动

小程序tab栏切换与页面滚动联动 tab栏与页面滚动联动点击tab栏页面跳到指定位置滚动页面时切换tab栏 tab栏与页面滚动联动 在进行小程序开发时,需要实现点击tab栏页面滚动到某一指定位置,并且滚动页面时,小程序的tab栏进行切换。 在一开始&a…

H1净利润同比增长超30%,这家泛家居领先品牌与纷享销客双向奔赴

增长,是我们永远绕不开的话题。 一方面,如何推动企业精细化运营与协作是行业面临的共同挑战。 另一方面,如何从技术、产品、营销等各个方面出发,以更高的效率、更优的体验为客户提供的价值也逐渐成为决定企业盈利空间的关键点。 …

redis的性能管理和雪崩

redis的性能管理 redis的数据是缓存在内存当中的 系统巡检: 硬件巡检、数据库、nginx、redis、docker、k8s 运维人员必须要关注的redis指标 在日常巡检中需要经常查看这些指标使用情况 info memory #查看redis使用内存的指标 used_memory:11285512 #数据占用的…

2023年中国离心制冷机产量及产业链分析[图]

离心制冷机是一种常用的空调制冷设备,目前主要应用于酒店、写字楼、商场、学校等众多大型场所的集中制冷场景。离心制冷机由离心式制冷压缩机、蒸发器、冷凝器、主电动机、抽气回收装置、润滑系统、控制柜和起动柜等零部件组成。这些零部件的组成有的采用分散型组装…

使用 API 管理平台的 5 大理由

组织需要治理和控制API生态系统,这种治理就是API管理的作用。 Uber 使用 API​​(应用程序编程接口)与 Google Maps 和 Twilio 等第三方服务连接,这有助于改善用户体验; Salesforce 提供 API,允许开发人员…

英国国家量子计算中心与IBM签署重要协议!英国进入实用量子时代

​(图片来源:网络) 近日,英国国家量子计算中心(NQCC)与IBM达成了一项重要协议。根据该协议,NQCC将为英国研究人员提供IBM量子高级计划的云访问权限,其中包括IBM的量子计算系统舰队。…

RFID电网资产全寿命周期管理解决方案

一、方案背景 随着电网公司对电网资产全寿命周期管理的要求日益明确,许多电网公司已经开始积极推进存量资产PMS、PM与AM数据的联动对应,并将联动成果纳入资产全寿命周期管理一体化平台进行指标考核。然而,由于资产变动导致数据质量下降的问题…

数据资产入表在即,企业可做好四项准备

2023年8月,财政部正式对外发布《企业数据资源相关会计处理暂行规定》,标志着数据资产即将入表,同时宣布2024年1月1日施行,如今已是11月下旬了,很多的企业纷纷感慨来不及了: 1.会计相关的制度、流程都没来得…

Python中使用requests库遇到的问题及解决方案

目录 一、引言 二、问题1:无法导入requests库 三、问题2:请求超时 四、问题3:无法处理重定向 五、问题4:无法处理Cookies 六、问题5:无法上传文件 七、问题6:无法处理HTTPS请求 八、问题7&#xff…