副檔名含義:
*.c : c語言的原始檔
*.h : c語言的標頭檔案
*.i : 預處理後的c檔案
*.c : c++語言的原始檔
*.cc : c++語言的原始檔
*.cxx : c++語言的原始檔
*.m : objective-c語言的原始檔
*.s : 組合語言的原始檔
*.o : 彙編後的目標檔案
*.a : 靜態庫
*.so : 共享庫
a.out : 連線後的輸出檔案
hello.c:
#include int main()
$ gcc -e hello.c -o hello.i
選項」-o」可以使編譯程式生成指定檔名
$ gcc -s hello.i -o hello.s
$ gcc -c hello.s -o hello.o
$ gcc hello.o -o hello
gcc編譯過程
本文對gcc編譯器如何工作做乙個概要描述.更為詳細的資訊請參考編譯器手冊。當我們進行編譯的時候,要使用一系列的工具,我們稱之為工具鏈.其中包括 預處理器cpp,編譯器前端gcc g 彙編器as,聯結器ld.乙個編譯過程包括下面幾個階段 1 預處理。預處理器cpp將對原始檔中的巨集進行展開。2 編譯。...
gcc編譯過程
當我們進行編譯的時候,要使用一系列的工具,我們稱之為工具鏈.其中包括 預處理器cpp,編譯器前端gcc g 彙編器as,聯結器ld.乙個編譯過程包括下面幾個階段 1 預處理。預處理器cpp將對原始檔中的巨集進行展開。2 編譯。gcc將c檔案編譯成彙編檔案。3 彙編。as將彙編檔案編譯成機器碼。4 連...
GCC編譯過程
第一步 預處理後結束 引數 e gcc e hello.c o hello.i 檢視hello.i檔案中的內容 cat hello.i stdio.h的內容插入到檔案裡去了,巨集定義也在預處理中都做了相應的處理 第二步 將hello.i 編譯為 目標 引數 c gcc c hello.i o hel...