天天看點

Ubuntu之GCC:GCC編譯器的簡介、安裝、使用方法之詳細攻略

Ubuntu之GCC:GCC編譯器的簡介、安裝、使用方法之詳細攻略

目錄

​​GCC編譯器的簡介​​

​​GCC編譯器的安裝​​

​​GCC編譯器的使用方法​​

GCC編譯器的簡介

     gcc編譯器是 Linux 下預設的 C/C++ 編譯器,大部分 Linux 發行版中都是預設安裝的。GCC 編譯器通常以 Linux 指令的形式在終端(Shell)中使用,它有很多選項。

      gcc是GNU編譯器套件(GNU Compiler Collection),它包括了​​C​​、​​C++​​、​​Objective-C​​、​​Fortran​​、​​Java​​、​​Ada​​和​​Go語言​​的前端,也包括了這些語言的庫(如libstdc++、libgcj等等)。GCC的初衷是為GNU作業系統專門編寫的一款編譯器。GNU系統是徹底的​​自由軟體​​。此處,“自由”的含義是它尊重使用者的自由。

     gcc的外部接口長得像一個标準的Unix​​編譯器​​。使用者在指令列下鍵入gcc之程式名,以及一些指令參數,以便決定每個輸入檔案使用的個别語言編譯器,并為輸出程式碼使用适合此硬體平台的組合語言編譯器,并且選擇性地執行連接配接器以制造可執行的程式。

GCC編譯器的安裝

先更新找到gcc,再下載下傳

sudo apt-get update

sudo apt-get install gcc

Ubuntu之GCC:GCC編譯器的簡介、安裝、使用方法之詳細攻略
Ubuntu之GCC:GCC編譯器的簡介、安裝、使用方法之詳細攻略

GCC編譯器的使用方法

       在使用GCC​​編譯器​​的時候,我們必須給出一系列必要的調用參數和檔案名稱。GCC編譯器的調用參數大約有100多個,這裡隻介紹其中最基本、最常用的參數。具體可參考GCC Manual。

1、GCC最基本的用法是∶gcc [options] [filenames]

其中options就是編譯器所需要的參數,filenames給出相關的檔案名稱。

  • -c,隻​​編譯​​​,不連結成為​​可執行檔案​​​,編譯器隻是由輸入的.c等​​源代碼​​​檔案生成.o為字尾的目标檔案,通常用于編譯不包含主程式的​​子程式​​檔案。
  • -o output_filename,确定輸出檔案的名稱為output_filename,同時這個名稱不能和源檔案同名。如果不給出這個選項,gcc就給出預設的可執行檔案a.out。
  • -g,産生符号調試工具(GNU的gdb)所必要的符号資訊,要想對源代碼進行調試,我們就必須加入這個選項。
  • -O,對程式進行優化​​編譯​​​、連結,采用這個選項,整個​​源代碼​​​會在編譯、連結過程中進行優化處理,這樣産生的​​可執行檔案​​的執行效率可以提高,但是,編譯、連結的速度就相應地要慢一些。
  • -O2,比-O更好的優化編譯、連結,當然整個編譯、連結過程會更慢。
  • -Idirname,将dirname所指出的目錄加入到程式頭檔案目錄清單中,是在​​預編譯​​​過程中使用的參數。C程式中的頭檔案包含兩種情況∶ A)#include <myinc.h>   B)#include “myinc.h”    其中,A類使用尖括号(< >),B類使用雙引号(“ ”)。對于A類,​​預處理​​​程式cpp在系統預設包含​​檔案目錄​​​(如/usr/include)中搜尋相應的檔案,而B類,預處理程式在​​目标檔案​​的檔案夾内搜尋相應檔案。
  • -v gcc執行時執行的詳細過程,gcc及其相關程式的版本号

繼續閱讀