Makefile文件詳解一(gcc命令參數詳解)

gcc編譯源文件共有4個過程,預處理、編譯、彙編、鏈接。

預處理:

命令:gcc -E test.c -o test.i  (-o後面指定生成文件的命名)
過程:展開宏定義(#define),處理編譯條件指令(#if #ifndef等),插入引用的頭文件(#include),刪除註釋,添加行號和文件標識。
結果:生成.i文件,一般的文本編輯器都能打開

編譯:

命令:gcc -S test.i -o test.s
過程:詞法分析,語法分析,語義分析,生成相應的彙編代碼
結果:生成.s文件,一般的文本編輯器都能打開 

彙編:

命令:gcc -c test.s -o test.o
過程:將彙編語言轉換成二進制文件
結果:生成.o文件,一般的文本編輯器無法打開,二進制文件都是0、1

鏈接:

命令:gcc test.o -o test
過程:鏈接動態庫、靜態庫
結果:生成可執行文件

我們編譯源文件的時候,可以分步編譯,也可以使用gcc test.c -o test直接生成可執行文件。將多個源文件編譯輸出時,需要一起進行gcc編譯,可利用Makefile文件來實現。

分步編譯如下:

 

最後得到main可執行文件,在cmd命令窗口下輸入main+回車,即可運行main可執行文件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章