【转】CentOS 6.6 升级GCC G++ (当前最新版本为v6.1.0) (完整)

2023-05-16

原文地址:https://www.cnblogs.com/lzpong/p/5755678.html

我这里是centos7 升级到gcc8.1,过程差不多,参考这篇文章,记录一下。

 

---原文---

CentOS 6.6 升级GCC G++ (当前最新GCC/G++版本为v6.1.0)

没有便捷方式,

yum update....   yum install 

或者 添加yum 的 repo 文件 也不行, 只能更新到 4.4.7!

then,  只能手动编译安装了,那么开始第一步下载源代码吧,GO!

1、 获取安装包并解压

wget http://ftp.gnu.org/gnu/gcc/gcc-6.1.0/gcc-6.1.0.tar.bz2

tar -jxvf gcc-6.1.0.tar.bz2

当然,http://ftp.gnu.org/gnu/gcc  里面有所有的gcc版本供下载,最新版本已经有6.1.0啦.

建议下载.bz2的压缩包,文件更小,下载时间更少.

2、 下载供编译需求的依赖项

参考文献[1]中说:这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。

cd gcc-6.1.0

./contrib/download_prerequisites 

3、 建立一个目录供编译出的文件存放

mkdir gcc-build-6.1.0

cd gcc-build-6.1.0

4、 生成Makefile文件

../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

5、 编译

make -j4

-j4选项是make对多核处理器的优化,如果不成功请使用 make,相关优化选项可以移步至参考文献[2]。

(注意:此步骤非常耗时,我虚拟机耗时近3小时; 实体机近80分钟,CPU基本是满的,内存也使用不少)

6、 安装

make install

(安装需要root权限!)

查看安装

ls /usr/local/bin | grep gcc

7、 重启,然后查看gcc版本

gcc -v

8、 写个C++11 特性的程序段 测试

tryCpp11.cc 代码省略....

g++ -std=c++11 -o tryCpp11 tryCpp11.cc

 

9、升级gcc,生成的动态库没有替换老版本gcc的动态库

源码编译升级安装了gcc后,编译程序或运行其它程序时,有时会出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found的问题。这是因为升级gcc时,生成的动态库没有替换老版本gcc的动态库导致的,将gcc最新版本的动态库替换系统中老版本的动态库即可解决。

9.1 运行以下命令检查动态库:

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

从输出可以看出,gcc的动态库还是旧版本的。说明出现这些问题,是因为升级gcc时,生成的动态库没有替换老版本gcc的动态库。

9.2 执行以下命令,查找编译gcc时生成的最新动态库:

find / -name "libstdc++.so*"

将上面的最新动态库libstdc++.so.6.0.22复制到/usr/lib64目录下

cd /usr/lib64

cp /root/Downloads/gcc-6.1.0/gcc-build-6.1.0/stage1-x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.22 ./

9.3 删除原来软连接:

rm -rf libstdc++.so.6

9.4 将默认库的软连接指向最新动态库:

ln -s libstdc++.so.6.0.22 libstdc++.so.6

9.5 默认动态库升级完成。重新运行以下命令检查动态库:

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

可以看到 输出有"GLIBCXX_3.4.21" 了

 

[注:摘抄自http://www.linuxidc.com/Linux/2015-01/112595.htm,  http://itbilu.com/linux/management/NymXRUieg.html, 原作者编译有出错过,但是我编译没有出错过]

[参考1:http://www.tuicool.com/articles/FVN7jez]

[参考2:http://blog.chinaunix.net/uid-14735472-id-5546560.html]

转载于:https://www.cnblogs.com/tiandsp/p/9431455.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【转】CentOS 6.6 升级GCC G++ (当前最新版本为v6.1.0) (完整) 的相关文章

  • 相机与IMU联合标定

    相机与IMU联合标定 1 imu utils 标定IMU的内参1 1 安装环境1 2 录制IMU数据集 2 kalibr 标定工具2 1 安装2 2 校准相机的内外参2 3 校准相机与IMU外参 总结参考资料 1 imu utils标定IM
  • matlab练习程序(寻找凸包,Graham扫描法)

    我不太清楚这个凸包在图像处理中到底会怎样的运用 xff0c 因为这个好像更多的是计算几何或是图形学里面的东西 不过作为一个算法 xff0c 我感觉还是有必要研究一下的 我主要的参考资料是 算法导论 的33 3和这个博客 代码在这里 xff0
  • 1

    stage 1 xff1a 尝试直接使用Adobe acrobat xff0c foxit阅读器 xff0c 以及CAJ等PDF阅读器 xff0c 尝试使用CAJ是因为CAJ有文字识别功能 xff0c 但是对于加密的文档 xff0c 依然是
  • Python自动化备份系统及网站

    随着目前IT迅猛的发展 xff0c 自动化运维对于Linux运维人员也越来越重要 xff0c 传统的运维方式靠大量的人力 xff0c 现在也逐渐转向自动化运维 xff0c 我们常见的跟自动化有关的软件有哪些呢 今天我们来简单列举一下 xff
  • AI 黑箱难题怎么破?基于神经网络模型的算法使机器学习透明化

    编者按 xff1a 人们可以训练人工智能 xff08 AI xff09 和机器人完成任务 xff0c 但整个过程在黑箱中运作 我们并不知道 AI 和机器人是如何决策的 一家名为 OptimizingMind 的初创公司想要解决这个问题 这篇
  • 技术面试介绍

    内容 xff1a 1 技术面试的形式 2 技术面试的大致环节 3 技术面试应具备的素质 4 技术面试的经验建议 参考 xff1a 剑指offer 第二版 第一章 Java程序员面试笔试宝典 第一章 第二章 1 技术面试的形式 技术面试大致上
  • 今天是 Java 诞生日,Java 24 岁了!

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 今天是 Java 诞生日 xff0c Java 今年 24 岁了 xff0c 比栈长还年轻 还有得搞 xff0c 别慌 xff01 作为一名Java语言的学习者 xff0c
  • [原创]求两个经纬度之间的距离

    经常要根据两个经纬度值 求它们之间的距离 delphi实现代码 xff1a 求两个经纬度之间的距离 function Distince const lon1 lat1 lon2 lat2 double double var alpha1 a
  • cmake的命令execute_process

    execute process COMMAND lt cmd1 gt args1 COMMAND lt cmd2 gt args2 WORKING DIRECTORY lt directory gt TIMEOUT lt seconds g
  • php 输出数组内容_php数组怎么输出

    PHP数组的输出方式有两种 xff1a print r 函数和var dump 函数 1 print r 利用 print r 函数可以打印输出整个数组内容及结构 xff0c 按照一定格式显示键和元素 注意 print r 函数不仅是只用于
  • VNC常用操作及常见问题解决办法汇总

    VNC登录用户缺省是root xff0c 但在安装oracle时必须用oracle用户的身份登录 xff0c 下面我们就以oracle为例说明如何配置VNC xff0c 从而可以使用不同的用户登录到主机 步骤描述如下 xff1a 步骤一 x
  • Xsens 在ROS环境下读取数据

    Xsens 在ROS环境下读取数据 1 Xsens 参数配置2 Xsens ROS环境下读取数据2 1 安装ROS二进制包2 2 Xsens修改rule文件2 3 启动节点 参考资料 1 Xsens 参数配置 软件可以在官网上进行下载 1
  • 交换机***查询篇

    如何确定 类型 当设备遭受 时 xff0c 通常伴随着如下现象 xff1a 用户无法获取ARP 用户上线成功率较低 用户无法访问网络 l严重时可能导致设备上所有用户都无法正常访问网络 当大量用户或固定某个端口下的所有用户出现上述现象时 xf
  • tomcat部署war包访问显示404

    在eclipse导出的maven项目war包 xff0c 放到tomcat下启动 xff0c 顺利启动且无报错 xff0c 但是浏览器访问该项目时显示404 原因 xff1a 未在server xml中配置这几个项目 xff0c 导致服务器
  • Pycharm: 代码跳转如何回退 (小技巧)

    背景 玩Python已经有段时间了 一般都是通过vim和Pycharm来开发 真心觉得这两个是神器 Vim神器暂且不说 今天来分享Pycharm的一个小技巧 用Pycharm的童鞋都知道 它有个跳转的功能 可以让我们在想深入了解某个函数 库
  • 最近沉迷美女图片无法自拔,所以我决定用PHP扒海量妹子图

    为什么80 的码农都做不了架构师 xff1f gt gt gt 学习PHP 43 MySQL制作WEB应用有一阵子了 xff0c 没有上过学所以只能学习到CURD的地步 最近对国产美女图片 私房写真特别感兴趣 xff0c 什么周妍希 刘飞儿
  • elementui的loading啊。。。踩坑了。。。

    为什么80 的码农都做不了架构师 xff1f gt gt gt 总结如下 xff1a 1 elementui的loading其实是fullscreen才是全局唯一 xff0c 不然会Loading service一次创建一次实例 2 ele
  • a padding to disable MSIE and Chrome friendly error page 填充禁用MSIE铬友好的错误页面

    一个网页在用户登录后 xff0c 应该自动刷新后 xff0c 显示登录用户信息 xff0c 但是没有自动刷新反而报错 xff0c 手动刷新后显示正常 显示如下 xff1a 检查代码 xff1a 可能原因 xff1a 文件读写权限 权限和用户
  • 边缘检测:Canny算子,Sobel算子,Laplace算子

    1 canny算子 Canny边缘检测算子是John F Canny于 1986 年开发出来的一个多级边缘检测 算法 更为重要的是 Canny 创立了边缘检测计算理论 xff08 Computational theory ofedge de
  • ProtocolException : 已超过传入消息(65536)的最大消息大小配额。

    SilverLight调用WCF xff0c 提交的是一个List lt Linq2SqlEntity gt xff1b 当List中数据量不大的时候 xff0c 不会报错 xff1b 当数据量稍微大一点儿 xff0c 就会出现这个错误 发

随机推荐