[普通]Linux编程中GCC对C++标准支持和如何选择GCC版本使用

作者(passion) 阅读(1654次) 评论(0) 分类( 软件)

Linux编程中GCC对C++标准支持和如何选择GCC版本使用

目前C语言的标准有:C89(ANSI C)、C90、C95、C99(ISO C)、C11(C1x)
    目前C++语言的标准有:C++98、C++03(对98小幅修改)、C++11(全面进化)、C++14、C++17

    C语言标准的介绍,请参考:C语言标准简介C89(ANSI C)、C99(ISO C)、C11(C1x) 
各种C++标准对应的编译器支持情况,请参考官方的对照表:C++ compiler support 
    简单来分析一下GCC编译器对不同的C++标准的支持情况。

C++17:
    gcc7完全支持,gcc6和gcc5部分支持,gcc6支持度当然比gcc5高,gcc4及以下版本不支持。
C++14:
    gcc5就可以完全支持,gcc4部分支持,gcc3及以下版本不支持。
C++11:
    gcc4.8.1及以上可以完全支持。gcc4.3部分支持,gcc4.3以下版本不支持。

    高版本的gcc向下兼容,支持低版本的C++标准。现在很多服务器yum里的gcc版本是4.8.5,也就是可以完全支持C++11了,部分支持C++14,不支持C++17。
    如果你想尝鲜,可以对照以上说明来选择gcc的版本,选择完全支持的版本。不过似乎gcc7还没有正式放出来。
    而在正式开发中,如果也想使用C++11和C++14的特性,最好的选择就是GCC5。当然这里说的都是主版本,副版本当然都选择最高的。副版本一般是对较低副版本进行功能优化、小幅修改和修复Bug。
    下面是各种GCC编译器的官方源码下载地址列表:GNU的GCC编译器下载列表http://ftp.gnu.org/gnu/gcc/
    下面是GCC版本列表的截图:

gcc源码包下载列表

    为了兼顾工作和学习,所以我推荐使用gcc-5.4.0版本。点gcc-5.4.0进入下载,如下图所示:

gcc5.4.0

    因为我们这里选择的版本是5.4.0,很多Centos系统的yum能够获取到的的只有4.8.5,甚至更低。所以,我们不能通过yum快速安装5.4.0。既然yum没有,那么我们去gnu的网站下载源码,自己编译安装就好了。
    如果你的系统没有安装过任何gcc,是没有办法编译gcc并安装gcc的。这样,我们需要先直接安装一个gcc,也就是yum提供的gcc的安装包。我们安装好gcc后,再用gcc来编译高版本的GCC,然后再安装高版本的GCC。再将配置更新,就可以使用最新的GCC了。
    这里特别需要说明的一下,因为很多人和我一样,对Linux上的安装都是一知半解,只是通过网上查询安装方法,实在是难以学到东西。我明白了这个套路,现在来科普一下,希望Linux新手能够更快了解Linux的安装知识。
    Linux是一个开源系统,GCC也是一个开源软件。在Windows中,软件都是直接安装使用的。到了Linux,才听说编译安装。动不动就把源码给你,说是开源的,然后编译安装步骤要吓死你。如果理不清Linux的套路,那真是感觉Linux真的太难了,搞了半天,连安装软件这点事情都稀里糊涂的。
    对于Linux安装的不同的方式以及不同编译方式的产生的背景介绍,请阅读《Linux中安装软件的背景知识介绍-直接安装和编译安装的区别


« 上一篇:wifi共享上网(至尊版wifi)
« 下一篇:linux error while loading shared libraries
在这里写下您精彩的评论
  • 微信

  • QQ

  • 支付宝

返回首页
返回首页 img
返回顶部~
返回顶部 img