升级gcc 4.8.5

升级gcc 4.8.5

https://www.crifan.com/figure_out_which_version_gcc_support_c11/

 

https://blog.csdn.net/joeblackzqq/article/details/77161575

操作系统是CentOS6.8的32位版本,yum自带的gcc版本为4.4.7,不支持C++11特性。所以需要升级到4.8.5,至少要升级到4.8.1才完全支持C++11。
    新系统是没有安装GCC的,而我们没有gcc4.8.5的安装包,只有源码包,地址为:http://ftp.gnu.org/gnu/gcc/
    源码包gcc4.8.5不能直接安装,所以我们需要先编译源码再安装。所以我们还是先有一个编译环境。yum提供了gcc4.4.7版本的安装包,所以我们可以先安装GCC4.4.7,这样就有了编译环境,就可以用来编译gcc4.8.5,然后再安装gcc4.8.5。
    有人可能会觉得这个麻烦,为什么不能直接安装gcc4.8.5呢?不是不可以,你得有这个版本的安装包才行呀。如果有安装包,就不需要安装gcc4.4.7,也不需要编译gcc4.8.5了,就可以直接安装gcc4.8.5。
    说一下我为什么选择4.8.5版本,因为4.8.5是4.8.x最高的版本,按理说是4.8.x版本中最好的一个版本。因为4.8.1刚完全支持C++11,后面的几个小版本肯定是小幅优化或者完善。具体做了什么优化完善,得看更新日志。
    好了,背景知识介绍完毕,下面开始安装过程。
1.获取gcc4.8.5的源码包(不同的版本,基本是只需要换掉后面的版本号即可更换下载地址)

  1. wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.bz2​

2.解压压缩包

  1. tar -jxvf gcc-4.8.5.tar.bz2

3.进入解压后的目录

  1. cd gcc-4.8.5

4.下载、配置和安装需要的依赖库

  1. ./contrib/download_prerequisites

    这个脚本文件会自动帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。
5.直接在当前目录下创建一个目录,存放编译后的文件。

  1. mkdir gcc-build-4.8.5

6.进入这个目录来编译

  1. cd gcc-build-4.8.5

7.生成Makefile文件,准备编译整个项目(gcc4.8.5)

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

  2.make

  3.sudo make install
    前面的..表示会进入到上一层目录执行configure。所以gcc-build-4.8.5目录必须在gcc-4.8.5里面创建,也就是我们这样创建的。

8.直接用gcc4.8.5编译程序会报错误:

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./test4)

解决方法:

新安装的gcc的libstdc++.so.6的版本在/usr/local/lib下需要重新做软链接到/usr/lib下就行。

libstdc++.so.6 -> /usr/local/lib/libstdc++.so.6.0.19

原文链接: https://www.cnblogs.com/alix-1988/p/12745949.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    升级gcc 4.8.5

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/343586

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午2:11
下一篇 2023年3月2日 上午2:11

相关推荐