本月初就有消息稱 GCC 5 將在本月晚些時候發布,今天開源編譯器 GCC 項目組直接跳過了5.0,發布了GCC 5.1,同樣是大量新特性和Bug修復。
- 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) ,因為它原本只能處理 C語言。GCC 很快地擴展,變得可處理 C++。后來又擴展能夠支持更多編程語言,如Fortran、Pascal、Objective-C、Java、Ada、Go以及各類處理器架構上的匯編語言等,所以改名GNU編譯器套件(GNU Compiler Collection)。
延伸閱讀:
- SCO下用gcc編譯調用mysql數據庫的程序