GCC

GNU编译器套裝
GCC 10.2编译自身源代码截图
GCC 10.2编译自身源代码截图
開發者GNU計劃
首次发布1987年5月23日 (1987-05-23)
当前版本14.2.0[1]在维基数据编辑(2024年8月1日)
源代码库 編輯維基數據鏈接
编程语言C++
操作系统跨平台
文件大小约一千五百万行[2]
语言英语
类型编译器
许可协议GNU通用公共许可证第三版或更新
网站gcc.gnu.org

GNU编译器套裝(英語:GNU Compiler Collection,縮寫為GCC)是GNU計劃制作的一种优化编译器,支持各种编程語言操作系统计算机系统结构。该编译器是以GPLLGPL許可證所發行的自由軟體,也是GNU計劃的关键部分,还是GNU工具链的主要組成部份之一。GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。1985年由理查德·马修·斯托曼開始發展,現在由自由軟體基金會負責維護工作。截至2019年,GCC大约有1500万行代码,是现存最大的自由程序之一。[2] 它在自由软件的发展中发挥了重要作用,不仅是一个工具,还是一个典例。

原名為GNU C語言編譯器GNU C Compiler),因為它原本只能處理C語言。同年12月,新的GCC编译器可以编译C++语言。后来又为FortranPascalObjective-CJavaAdaGo等其他語言开发了前端。C和C++编译器也支持OpenMPOpenACC规范。

GCC编译器已经被移植到比其他编译器更多的平台和指令集架构上,并被广泛部署在开发自由和专有软件的工具中。GCC还可用于许多嵌入式系统,包括基于ARMPower ISA英语Power ISA的芯片。

GCC不仅是GNU操作系统的官方编译器,还是许多类UNIX系统和Linux发行版的标准编译器。BSD家族中的大部分操作系统也在GCC发布之后转用GCC;不过FreeBSD、OpenBSD和Apple macOS已经转向了Clang编译器[3],主要是因为许可问题。[4][5][6]GCC也可以编译WindowsAndroidiOSSolarisHP-UXIBM AIXDOS系统的代码。GCC原本用C開發,後來因為LLVMClang的崛起,它更快地將開發語言轉換為C++。許多C的愛好者在對C++一知半解的情況下主觀認定C++的性能一定會輸給C,但是Ian Lance Taylor給出了不同的意見,並表明C++不但性能不輸給C,而且能設計出更好,更容易維護的程式[7][8]

  1. ^ GCC 14.2 Released. 2024年8月1日 [2024年8月1日]. 
  2. ^ 2.0 2.1 Víctor Rodríguez. Cutting Edge Toolchain (Latest Features in GCC/GLIBC). youtube.com. Linux Foundation. 2019-10-01 [2021-01-19]. (原始内容存档于2021-11-07). 
  3. ^ The LLVM Compiler Infrastructure Project. llvm.org. [2022-09-24]. (原始内容存档于2023-01-18). 
  4. ^ Apple's GPLv3 purge. meta.ath0.com. [2021-01-12]. (原始内容存档于2023-01-18) (美国英语). 
  5. ^ Linnemann, Reid. Why Clang. 2012-06-20 [2021-01-12]. (原始内容存档于2023-01-18). 
  6. ^ August 29, 2007: FreeBSD Foundation Newsletter, August 29, 2007. 2007-10-11 [2021-01-12]. (原始内容存档于2007-10-11). 
  7. ^ GCC's move to C++. [2013-05-01]. (原始内容存档于2013-06-14). 
  8. ^ Taylor的演讲簡報 (PDF). [2018-05-19]. (原始内容存档 (PDF)于2018-07-01). 

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Nelliwinne