程序編譯過程
采用GCC工具鏈:
- gcc HelloWorld.c -E -o HelloWorld.i 預處理:加入頭文件,替換宏。
- gcc HelloWorld.c -S -c HelloWorld.s 編譯:包含預處理,將 C 程序轉換成匯編程序。
- gcc HelloWorld.c -c HelloWorld.o 匯編:包含預處理和編譯,將匯編程序轉換成可鏈接的二進制程序。
- gcc HelloWorld.c -o HelloWorld 鏈接:包含以上所有操作,將可鏈接的二進制程序和其它別的庫鏈接在一起,形成可執行的程序文件
程序編譯過程填坑
源文件生成預處理文件: gcc -E HelloWorld.c -o HelloWorld.i
預處理文件生成編譯文件: gcc -S HelloWorld.i -o HelloWorld.s
編譯文件生成匯編文件: gcc -c HelloWorld.s -o HelloWorld.o
匯編文件生成可執行文件:gcc HelloWorld.o -o HelloWorld
源文件生成可執行文件:gcc HelloWorld.c -o HelloWorld
Linux系統運行可執行文件:./HelloWorld