C語言中文網 目錄
首頁 > GCC編譯器 閱讀:2,145

GCC的發展歷史

GNU 項目計劃的主要目的是創建一個名叫 GNU’s Not Unix(GNU) 的完全免費的操作系統。該操作系統將包括絕大多數自由軟件基金會所開發的其他軟件,以對抗所有商業軟件,而這個操作系統的核心(kernel)就叫 HURD。

但是 GNU 在開發完全免費的操作系統上并未取得成功,直到 20 世紀 90 年代由林納斯·本納第克特·托瓦茲(Linus Benedict Torvalds)開發了 Linux 操作系統,GNU 才算在免費操作系統上完成了任務。

雖然 GNU 計劃在開發免費操作系統上不成功,但是卻成功開發幾個廣為流傳的 GNU 軟件,其中最著名的是 GNU C Complier(gcc)。

這個軟件成為歷史上最優秀的C語言編譯器, 其執行效率與一般的編譯器相比平均效率要高 20%~30%,使得那些靠販賣編譯器的公司大吃苦頭,因為它們無法研制出與 gcc 同樣優秀,卻又完全免費、并開放源代碼的編譯器來。

而由于它又是 copylefted,所以一旦有用戶發現錯誤,就會通知 Richard Stallman,所以幾乎每個月都可以推出新版本。然而,它還有一個十分特殊而且不同尋常的意義:幾乎所有的自由軟件都是通過它編譯的??梢哉f,它是自由軟件發展的基石與標桿。

現在,gcc 已經可以支持 7 種編程語言和 30 種編程結構,是學術界最受歡迎的編譯工具。

其他 GNU 軟件還包括 GNU emacs、GNU Debugger(GDB)、GNU Bash 以及大部分 Linux 系統的程序庫和工具等。

目前,gcc 已發展到了 8.x 的版本,幾乎所有開源軟件和自由軟件中都會用到,因此它的編譯性能會直接影響到 Linux、Firefox、OpenOffice.org、Apache 以及一些數不清的小項目的開發。gcc 無疑處在開源軟件的核心地位。

作為自由軟件的旗艦項目,Richard Stallman 在十多年前剛開始寫作 gcc 的時候,還只是把它當作一個C程序語言的編譯器;gcc 的意思也只是 GNU C Compiler 而已。經過這么多年的發展,gcc 已經不僅僅能支持C語言,它現在還支持 Ada、C++、Java、Objective-C、Pascal、COBOL 以及函數式編程和邏輯編程的 Mercury 語言等。因此,現在的 gcc 已經變成了 GNU Compiler Collection,也即是 GNU 編譯器家族的意思了。這個名稱同時也說明了 gcc 對于各種硬件平臺無所不在的支持,甚至包括一些生僻的硬件平臺。

gcc 不僅功能非常強大,結構也異常靈活。最值得稱道的一點就是,它可以通過不同的前端模塊來支持各種語言,如 Java、Fortran、Pascal、Modula-3 和 Ada 語言等。

總結

GUN 雖然沒有開發出操作系統,但是卻開發出了很多系統級的自由軟件,GCC 就是其中之一。

精美而實用的網站,提供C語言、C++、STL、Linux、Shell、Java、Go語言等教程,以及socket、GCC、vi、Swing、設計模式、JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo