c代碼編譯成可執行程式4步:
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.連結:C語言寫的程式是需要依賴各種庫的,是以編譯之後還需要把庫連結到最終可執行程式中去
gcc hello.o -o hello
各選項含義:
-E 隻進行預處理
-S 隻進行預處理和編譯
-c 隻進行預處理 編譯 和彙編
-o 指定生成的輸出檔案名為file
檔案字尾的含義
.c C語言檔案
.i 預處理後的C語言檔案
.s 編譯後的彙編檔案
.o 編譯後的目标檔案

519722093.png