gcc編譯C的過程

#gcc hello.c

這條命令直接將hello.c生成一個可執行的a.out文件。這一過程當中總共有四個步驟。
gcc編譯源碼的四個步驟:
預處理----->編譯----->彙編----->連接
下面是hello.c文件命令行

#include<stdio.h>
#define DISP "hello,welcome to C world!"
int main(void)
{
	printf("%s\n",DISP);
	
	return 0;
}

###預處理 對各類預處理指令(#include、#define等)進行處理,刪除註釋和多餘的空白的字符,生成一份新的代碼。 #gcc -E hello.c -o hello.i
-E通知編譯器對目標文件(hello.c)進行預處理。
-o 對命令的輸出結果進行導入操做,此處即把gcc -E hello.c的結果導入到hello.i文件(名字自定義)。
這條命令以後當前目錄下多了一個hello.i文件。 ###編譯 對代碼語法、語義進行檢查,是否有錯誤。生成彙編代碼。
#gcc -S hello.i -o hello.s
-s 通知編譯器對hello.i進行編譯,此時目錄下多一個hello.s文件。
###彙編 把彙編代碼轉換成計算機能夠是別的二進制文件。
#gcc -c hello.s -o hello.o
-c 通知編譯器把彙編代碼轉換成二進制文件。
###連接
將.o文件連接可執行文件。
#gcc hello.o -o hello
最後,在命令行輸入./helllo便可執行文件。code

相關文章
相關標籤/搜索