以GCC編譯器為例,可以分為四步。
第一步是預處理,包括語法檢查等工作。
gcc-Pabc.
c第二步由源程序生產匯編語言代碼。
gcc-Sabc.c會生成abc.s文件,這個文件里就是匯編代碼。
第三步編譯器生成目標代碼,一個源文件生成一個目標代碼。
gcc-cabc.c會生成abc.
o第四步連接器從目標代碼生成可執行文件。gccabc.o目標代碼包括機器碼和符號表(函數及變量名)。
連接器的主要作用是通過符號表在庫文件和其他模塊中找到在目標代碼中引入或未定義的符號(函數及變量名),將幾個目標代碼合成可執行文件。