搜尋

首頁  >  問答  >  主體

linux - gcc 和 gcc-c++ 啥區別

我在安裝編譯器的時候不知道 yum install gcc 和 yum install gcc-c++啥區別。
有啥差別嗎

天蓬老师天蓬老师2749 天前650

全部回覆(1)我來回復

  • 怪我咯

    怪我咯2017-05-16 13:26:14

    參考

    This package adds C++ support to the GNU Compiler Collection.
    It includes support for most of the current C++ specification,
    including templates and exception handling。

    可以看出gcc-c++是為gcc提供c++語言特性支援的

    其實,就概念而言gcc是指整個gcc的這套工具集合,它分為gcc前端和gcc後端(我個人理解為gcc外殼和gcc引擎),gcc前端對應各種特定語言(如c++ /go等)的處理(對c++/go等特定語言進行對應的語法檢查, 將c++/go等語言的程式碼轉換為c程式碼等),gcc後端對應把前端的c程式碼轉為跟你的電腦硬體相關的彙編或機器碼等。 (可能描述上不是特別準確,不過大體就是這個意思)

    而就軟體程式包而言,gcc.rpm就是那个gcc后端,而gcc-c++.rpm就是針對c++這個特定語言的gcc前端。這樣的設計就保證了充分的彈性,針對不同的程式語言,只需要開發不同的gcc前端就好了; 同時對於使用者來說,如果我只需要支援編譯c++,那麼我就只裝一個c++的gcc前端就好了,就不會含有其他語言特性的程式碼,使得使用者的軟體環境也比較輕量、乾淨

    回覆
    0
  • 取消回覆