Centos升级gcc版本

步骤1:查看当前服务器gcc版本

gcc –version

步骤2:查看当前gcc安装目录

find / -name gcc

cd /usr/bin

ll gcc*

因为gcc,g++,c++都是配套的,查找出 g++和c++的原版本位置

步骤3:安装下载依赖包

yum install glibc-headers gcc-c++  gcc gmp  gmp-devel  mpfr  mpfr-devel  libmpc  libmpc-devel

yum install libffi-devel

./contrib/download_prerequisites

步骤4:安装依赖包

cd /*自己的目录*/gcc-11.4.0/mpfr-3.1.6

./configure --prefix=/usr/local/ mpfr-3.1.6

make

make install

cd /*自己的目录*/gcc-11.4.0/mpc-1.0.3

./configure --prefix=/usr/local/ mpc-1.0.3

make

make install

cd /*自己的目录*/gcc-11.4.0/gmp-6.1.0

./configure --prefix=/usr/local/ gmp-6.1.0

make

make install

cd /*自己的目录*/gcc-11.4.0/isl-0.18

./configure --prefix=/usr/local/ isl-0.18

make

make install

修改环境变量vim ~/.bashrc,添加如下

export LD_LIBRARY_PATH=:$LD_LIBRARY_PATH:/usr/local/mpc-1.0.3/lib

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gmp-6.0.1/lib

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpfr-3.1.6/lib

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/isl-0.18/lib

export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/

使环境变量生效   source  ~/.bashrc

步骤5:安装gcc

进入目录/*自己的目录*/gcc-11.4.0/,新建build文件夹,进入该文件夹,执行以下命令

../configure --prefix=/usr/local/gcc-11.4.0 --with-gmp=/usr/local/gmp-6.0.1/ --with-mpfr=/usr/local/mpfr-3.1.6/ --with-mpc=/usr/local/mpc-1.0.3/ --with-isl=/usr/local/isl-0.18 --with-system-zlib --disable-multilib

再执行如下命令:

make

make install

成功后如下图所示:

修改环境变量~/.bashrc,添加如下

使环境变量生效  ~/.bashrc

步骤6:更新gcc软连接

cd /usr/bin

更新gcc

mv gcc gcc.bak

ln -s /usr/local/gcc-11.4.0/bin/gcc /usr/bin/gcc

更新g++

mv g++ g++.bak

ln -s /usr/local/gcc-11.4.0/bin/g++ /usr/bin/g++

更新c++

mv c++ c++.bak

ln -s /usr/local/gcc-11.4.0/bin/c++ /usr/bin/c++

更新libstdc++.so.6

cd /usr/lib64/

cp /usr/local/gcc-11.4.0/lib64/libstdc++.so.6.0.29 /usr/lib64/

mv libstdc++.so.6 libstdc++.so.6.bak

ln -s /usr/lib64/libstdc++.so.6.0.29 /usr/lib64/libstdc++.so.6

步骤7:测试新版本gcc

最后:出错解决方式

出错:gcc configure: error: C compiler cannot create executables

解决:查找日志Config.log,在里面搜索error,定位到问题

问题:error while loading shared libraries: libmpc.so.2: cannot open shared object file: No such file or directory

解决:[student2@node01 ~]$ locate libmpc.so.2

/opt/software/mpc-0.8.1/lib/libmpc.so.2

/opt/software/mpc-0.8.1/lib/libmpc.so.2.0.0

将export LD_LIBRARY_PATH=/opt/software/mpc-0.8.1/lib/:$LD_LIBRARY_PATH 添加到环境变量~/.bashrc,执行source  ~/.bashrc使环境变量生效

问题:locate: command not found

解决:yum  -y install mlocate

问题:locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory

解决:updatedb

问题

解决:在环境变量中添加export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/

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

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

相关文章

yolov8 opencv dnn部署 github代码

源码地址 本人使用的opencv c github代码,代码作者非本人 实现推理源码中作者的yolov8s.onnx 推理条件 windows 10 Visual Studio 2019 Nvidia GeForce GTX 1070 opencv4.7.0 (opencv4.5.5在别的地方看到不支持yolov8的推理,所以只使用opencv4.7.0) c部署 环境…

竞赛保研 机器视觉目标检测 - opencv 深度学习

文章目录 0 前言2 目标检测概念3 目标分类、定位、检测示例4 传统目标检测5 两类目标检测算法5.1 相关研究5.1.1 选择性搜索5.1.2 OverFeat 5.2 基于区域提名的方法5.2.1 R-CNN5.2.2 SPP-net5.2.3 Fast R-CNN 5.3 端到端的方法YOLOSSD 6 人体检测结果7 最后 0 前言 &#x1f5…

Maven《四》-- 基于Idea进行Maven工程构建

目录 🐶4.1 构建概念和构建过程 🐶4.2 命令方式项目构建 1. 🥙编译:mvn compile 2. 🥙清理:mvn clean 3. 🥙打包:mvn package 4. 🥙安装:mvn install …

泰迪科技最新大数据法律监督模型解决方案

大数据法律监督平台是基于监督数据整合管理平台、监督模型构建平台、内置模型库以及法律监督线索管理平台打造的一套服务于检察机关法律监督工作的专业化系统。通过数据采集、融合、挖掘、建模、展现等一系列能力,辅助检察官从纷繁复杂的数据中,开展多维…

java遍历(for和forEach)

1.dade文件 package model;public class dade {private int id;private String name;public dade() {}public dade(int id, String name) {this.id id;this.name name;}public int getId() {return id;}public void setId(int id) {this.id id;}public String getName() {r…

Python中的函数(二)

1 闭包与装饰器 1.1 闭包 闭包(Closure)是指在一个函数内部定义的函数,并且该内部函数可以访问外部函数作用域中的变量。闭包可以在外部函数执行完毕后,仍然保持对外部函数作用域的引用,从而可以继续访问和操作外部函…

【Java】--网络编程:基于TCP协议的网络通信

【Java】–网络编程:基于TCP协议的网络通信 文章目录 【Java】--网络编程:基于TCP协议的网络通信一、TCP协议1.1 概念1.2 三次握手1.2.1 文字描述1.2.2 画图演示 1.3 四次挥手1.3.1 文字描述1.3.2 画图演示 二、基于TCP的Socket网络编程2.1 概念2.2 服务…

Kafka-服务端-网络层

Reactor模式 Kafka网络层采用的是Reactor模式,是一种基于事件驱动的模式。熟悉Java编程应该了解JavaNIO提供了实现Reactor模式的API。常见的单线程Java NIO的编程模式如图所示。 为了满足高并发的需求,也为了充分利用服务器的资源,服务端需要…

中间件存储设计 - 数组与链表

文章目录 数组ArrayListLinkedListHashMap小结 中间件主要包括如下三方面的基础:数据结构、JUC 和 Netty,接下来,我们先讲数据结构。 数据结构主要解决的是数据的存储方式问题,是程序设计的基座。 按照重要性和复杂程度&#xf…

Python fork方法:创建新进程

除可以进行多线程编程之外,Python 还支持使用多进程来实现并发编程。 Python 的 os 模块提供了一个 fork() 方法,该方法可以 fork 出来一个子进程。简单来说,fork() 方法的作用在于,程序会启动两个进程(一个是父进程&…

《WebKit 技术内幕》学习之十(1): 插件与JavaScript扩展

虽然目前的浏览器的功能很强 ,但仍然有其局限性。早期的浏览器能力十分有限,Web前端开发者希望能够通过一定的机制来扩展浏览器的能力。早期的方法就是插件机制,现在流行次啊用混合编程(Hybird Programming)模式。插件…

大模型实战营 Day5作业

基础作业: 使用 LMDeploy 以本地对话、网页Gradio、API服务中的一种方式部署 InternLM-Chat-7B 模型,生成 300 字的小故事(需截图) TurboMind 推理命令行本地对话 lmdeploy chat turbomind /share/temp/model_repos/internlm-cha…

RK3568平台 TinyAlsa集成第三方音频算法

一.tinyalsa介绍 ALSA(Advanced Linux Sound Architecture)是一个开源项目,涵盖了用户空间和内核空间对音频设备的操作接口,通过应用层使用alsalib可以实现对音频设备的控制 TinyAlsa是android推出的一个精简的ALSA库&#xff0c…

【教程】npm的时候ssh报错ssh://git@github.com/frozeman/bignumber.js-nolookahead.git

问题: fiscoubuntu:~/fisco/benchmarks$ npm install install web30.20.7 npm ERR! code 128 npm ERR! An unknown git error occurred npm ERR! command git --no-replace-objects ls-remote ssh://gitgithub.com/frozeman/bignumber.js-nolookahead.git npm ERR! …

Spring Cloud 系列:Seata 中TCC模式具体实现

概述 https://seata.io/zh-cn/docs/dev/mode/tcc-mode https://seata.io/zh-cn/docs/user/mode/tcc TCC模式与AT模式非常相似,每阶段都是独立事务,不同的是TCC通过人工编码来实现数据恢复。需要实现三个方法: Try:资源的检测和…

第4章-IP基本原理

目录 1. IP协议概述 1.1. 定义 1.2. 功能 1.3. IP网络的结构 1.4. IP头格式 2. IP地址和地址映射 3. IP包转发 4. 其他相关协议介绍 1. IP协议概述 1.1. 定义 IP协议:IP协议是网际互连协议; 工作层次:网络层; 封装&#…

dubbo:服务暴露

节点角色说明: Provider:暴露服务的服务提供方。 Consumer::调用远程服务的服务消费方。 Registry:服务注册与发现的注册中心。 Monitor:统计服务的调用次调和调用时间的监控中心。 Container:服务运行容器。 调用关系说明: 0.服务容器负责启动&#xff…

HTML+JavaScript-03

JavaScript函数 定义函数的格式 JavaScript 函数是通过 function 关键词定义的。 function sum(a, b){//函数体return a b;//返回值为a、b的和 }函数的调用 调用函数时直接书写函数名即可 function show(){alert("函数show被调用"); } show();函数的相互调用 …

使用Docker部署Apache Superset结合内网穿透实现远程访问本地服务

文章目录 前言1. 使用Docker部署Apache Superset1.1 第一步安装docker 、docker compose1.2 克隆superset代码到本地并使用docker compose启动 2. 安装cpolar内网穿透,实现公网访问3. 设置固定连接公网地址 前言 Superset是一款由中国知名科技公司开源的“现代化的…

PSEUDO-LIDAR++:自动驾驶中 3D 目标检测的精确深度

论文地址:PSEUDO-LIDAR: ACCURATE DEPTH FOR 3D OBJECT DETECTION IN AUTONOMOUS DRIVING 论文代码:https://github.com/mileyan/Pseudo_Lidar_V2 摘要 3D 检测汽车和行人等物体在自动驾驶中发挥着不可或缺的作用。现有方法很大程度上依赖昂贵的激光雷…