理解C语言编译流程(附编译命令)
生活随笔
收集整理的這篇文章主要介紹了
理解C语言编译流程(附编译命令)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
編譯流程
1.預處理
GCC預編譯器對各種預處理命令進行處理,例如對頭文件的處理,宏定義的展開,條件編譯的選擇等。預處理完成后會生成test.i文件,也可以通過如下命令生成.i文件
gcc -E test.c -o test.i2.編譯
C語言的編譯器(ccl)首先對預處理之后的源文件及逆行詞法,語法以及語義進行分析,然后進行代碼優化,最后把C語言代碼翻譯成匯編代碼。編譯完成后生成test.s文件,也可以通過如下命令生成.s文件
gcc -S test.i -o test.s3.匯編
匯編器(as)把匯編代碼翻譯成機器語言,并生成可重定位目標文件。匯編完成后,生成.o文件,也可以通過如下命令生成.o文件
as test.s -o test.o4.鏈接
鏈接(link)。鏈接器(ld)會把所有生成的可重定位目標文件以及用到的庫文件綜合成一個可執行的二進制文件,也可以通過如下命令生成二進制可執行文件
ld -o test test.o -lc總結
以上是生活随笔為你收集整理的理解C语言编译流程(附编译命令)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: uniapp组件和HTML标签重名致设置
- 下一篇: 饲料码垛机器人技术方案_机器人码垛系统的