程序員自我修養(yǎng)2-編譯與鏈接

圖片.png

上術(shù)過程分解為4個(gè)步驟:預(yù)處理、編譯、匯編、鏈接
1、預(yù)編譯命令:
處理‘#’命令
gcc -E hello.c -o hello.i或cpp hello.c > hello.i
2、編譯:
把預(yù)處理完的文件進(jìn)行一系列詞法分析、語法分析、語義分析及優(yōu)化后產(chǎn)生相應(yīng)的匯編代碼文件。
gcc -S hello.i -o hello.s

將預(yù)編譯和編譯兩個(gè)步驟合成一個(gè):

/usr/lib/gcc/i486-linux-gnu/4.1/ccl hello.c或gcc -S hello.c -o hello.s
3、匯編:
as hello.s -o hello.o或gcc -c hello.s -o hello.o
三個(gè)步驟合:gcc -c hello.c -o hello.o

鏈接過程:

地址和空間分配、符號(hào)決議、重定位

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容