日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

gcc 用法

發(fā)布時間:2025/4/5 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 gcc 用法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
新建一個hello.c 文件
// hello.c #include <stdio.h>int main() {printf("Hello, world!\n");return 0; }
最簡單用法,直接編譯hello.c,輸出a.out的可執(zhí)行文件
gcc hello.c ./a.out
編譯hello.c,輸出名稱為hello的可執(zhí)行文件
gcc -o hello hello.c ./hello
  • List item
  • C語言編譯過程分成四個步驟:

  • 由.c文件到.i文件,這個過程叫預(yù)處理
  • 由.i文件到.s文件,這個過程叫編譯
  • 由.s文件到.o文件,這個過程叫匯編
  • 由.o文件到可執(zhí)行文件,這個過程叫鏈接
  • 如上圖所示,GCC通過4個步驟將C / C ++程序編譯為可執(zhí)行程序。例如,“ gcc -o hello hello.c”執(zhí)行如下:
  • 預(yù)處理:通過GNU C預(yù)處理器(cpp.exe),其中包括標頭(#include)和擴展宏(#define)。
  • cpp hello.c > hello.i

  • 生成的中間文件“ hello.i”包含擴展的源代碼。
    編譯:編譯器將預(yù)處理的源代碼編譯為特定處理器的匯編代碼。
  • gcc -S hello.i

  • 該-S選項指定生成匯編代碼,而不是目標代碼。生成的程序集文件為“ hello.s”。
    匯編:匯編器(as.exe)在目標文件“ hello.o”中將匯編代碼轉(zhuǎn)換為機器代碼。
  • as -o hello.o hello.s

  • 鏈接器:最后,鏈接器(ld.exe)將目標代碼與庫代碼鏈接在一起,以生成可執(zhí)行文件“ hello.exe”。
  • ld -o hello.exe hello.o …libraries…

    原文鏈接

    總結(jié)

    以上是生活随笔為你收集整理的gcc 用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。