快捷搜索:  汽车  科技

gcc编译的过程:开源编译器GCC跨越

gcc编译的过程:开源编译器GCC跨越文章仅代表作者的知识和看法,如有不同观点,请楼下排队吐槽:DGCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器。它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分。GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,GCC同样适用于微软的Windows。 GCC是自由软件过程发展中的著名例子,由自由软件基金会以GPL协议发布。GCC 原名为 GNU C 语言编译器(GNU C Compiler)[3] ,因为它原本只能处理 C语言。GCC 很快地扩展,变得可处理 C 。后来又扩展能够支持更多编程语言,如Fortran、Pascal、Objective-C、Java、Ada、Go以及各类处理器架构上的汇编语言等,所以改名GNU编译器套件

本月初就有消息称 GCC 5 将在本月晚些时候发布,今天开源编译器 GCC 项目组直接跳过了5.0,发布了GCC 5.1,同样是大量新特性和Bug修复。

gcc编译的过程:开源编译器GCC跨越(1)

  • C编译器默认使用-std=gnu11而不是-std=gnu89;
  • 默认情况下,libstdc 库默认使用了全新的ABI;(详见发行说明的Runtime Library (libstdc )一栏)
  • Graphite loop optimizations 不再需要 CLooG 库,只支持ISL 0.14(推荐) 或者 0.12.2,安装手册中都有详细说明;
  • 非标准版的 C 0x traits has_trivial_default_constructor has_trivial_copy_constructor 和 has_trivial_copy_assign 已弃用,在接下来的版本中将移除,标准化的 C 11 traits is_trivially_default_constructible is_trivially_copy_constructible 和 is_trivially_copy_assignable来取代;
  • libstdc 库完整支持 C 11,实验性支持 C 14;
  • 完整支持多线程实现OpenMP 4.0;
  • C 和 C 支持英特尔的 Cilk Plus并行编程接口;
  • 完整支持 Go 1.4;
  • 支持ARM Cortex-A72和 Cortex-A17;
  • 初步支持 Just-In-Time (JIT)编译;
  • 正式支持DragonFlyBSD。

此外还有许多编译优化等等。

其它诸多特性及详情请点击这里查看发行说明。

点击这里查看HackerNews的讨论。

关于GCC

GCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发的编程语言编译器。它是以GPL许可证所发行的自由软件,也是 GNU计划的关键部分。GCC原本作为GNU操作系统的官方编译器,现已被大多数类Unix操作系统(如Linux、BSD、Mac OS X等)采纳为标准的编译器,GCC同样适用于微软的Windows。 GCC是自由软件过程发展中的著名例子,由自由软件基金会以GPL协议发布。

GCC 原名为 GNU C 语言编译器(GNU C Compiler)[3] ,因为它原本只能处理 C语言。GCC 很快地扩展,变得可处理 C 。后来又扩展能够支持更多编程语言,如Fortran、Pascal、Objective-C、Java、Ada、Go以及各类处理器架构上的汇编语言等,所以改名GNU编译器套件(GNU Compiler Collection)。

本文为转载,如需再次转载,请查看源站 “geek.csdn.net” 的要求。如果我们的工作有侵犯到您的权益,请及时联系我们。

文章仅代表作者的知识和看法,如有不同观点,请楼下排队吐槽:D

猜您喜欢: