Linux 編譯器之 GCC

2021-09-20 03:42:32 字數 1680 閱讀 3092

編輯器是指我用它來寫程式的(編輯**),而我們寫的**語句,電腦是不懂的,我們需要把它轉成電腦能懂的語句,編譯器就是這樣的轉化工具。就是說,我們用編輯器編寫程式,由編譯器編譯後才可以執行

gcc(gnu compiler collection,gnu 編譯器套件),是由gnu開發的程式語言編譯器。gcc 原本作為gnu作業系統的官方編譯器,現已被大多數類unix作業系統(如 linux、bsd、mac os x 等)採納為標準的編譯器,gcc 同樣適用於微軟的 windows。

gcc識別的副檔名如下:

.c c 語言檔案

.i 預處理後的 c 語言檔案

.c、.cc、.cp、.cpp、.c++、.cxx c++語言檔案

.ii 預處理後的 c++ 語言檔案

.s 彙編檔案(使用者自己新建的彙編檔案)

.s 預處理後的彙編檔案

.o 編譯後的目標檔案

.a 目標檔案的靜態鏈結庫(鏈結時使用)這個是重點

.so 目標檔案的動態鏈結庫(鏈結、執行時使用)這個是重點

gcc 和 g++ 編譯器的編譯過程

1、預處理

2、編譯

3、彙編

4、鏈結

gcc 常用編譯應用例項

分步編譯:

1)gcc -e hello.c -o hello.i

2)gcc -s hello.i -o hello.s

3)gcc -c hello.s -o hello.o

4)gcc hello.o -o hello_elf

編譯選項說明:

-o file 指定生成的輸出檔名為 file

-e 只進行預處理

-s 只進行預處理和編譯

-c 只進行預處理、編譯和彙編

檔名字尾說明:

.c c 語言檔案

.i 預處理後的 c 語言檔案

.s 預處理後的彙編檔案

.o 編譯後的目標檔案

-idir 將dir目錄加入標頭檔案搜尋目錄列表,優先在dir目錄中查詢包含的標頭檔案

-ldir 將dir目錄加入庫檔案目錄列表,優先在dir目錄中查詢庫檔案

-lname 鏈結庫為name的庫

-static 鏈結時使用靜態庫

-shared 編譯動態庫

-wall 生成所有級別的警告資訊

-w 關閉所有警告,建議不使用此選項

Linux 安裝gcc編譯器

總結一下自己的學習經驗,學習時發現linux沒有安裝gcc,方式一 yum install gcc c 前提是可以聯網 方式二 進入linux桌面,找到 rpm ivh cpp 4.1.2 48.e15.i386.rpm 回車 rpm ivh kernel headers 2.6.18 194.el...

linux入門筆記GCC編譯器

gcc編譯器能將c c 語言源程式 匯程式設計序和目標程式編譯 連線成可執行檔案,如果沒有給出可執行檔案的名字,gcc將生成乙個名為a.out的檔案 副檔名 文 件 類 型 後續編譯流程 c c語言源 檔案 預處理 編譯 彙編 鏈結 c cc cxx c 源 檔案 預處理 編譯 彙編 鏈結 i 已經...

Linux編譯器GCC的使用

編譯流程的四個步驟 預處理編譯 彙編鏈結 hello.c 預處理 hello.i 編譯 hello.s 彙編 hello.o 鏈結 hello gcc編譯流程 gcc optio filename option e 可以使編譯器在預處理結束時就停止編譯。o 指的是目標檔案。s 可以使編譯器完成編譯時...