天天看點

gcc學習筆記

/*

 *   gcc學習相關筆記

 *  

 */

gcc選項:

-c    隻生成目标檔案,但不連結

    gcc -c main.c   //預設生成main.o檔案

    *o檔案可以再連結成可執行檔案

-s    隻生成彙程式設計式,不編譯成目标檔案

    gcc -s main.c   //将檔案編譯成彙程式設計式檔案,預設為*.s

-e    隻對檔案進行預處測,比如檔案包含、宏定義等進行編譯前處理

    gcc -e main.c   //将檔案編譯成宏處理後撤檔案

    如有如下宏定義:

    #define debug(str) printf("error--%d : " #str "\n",__line__)

    在源檔案中有如下調用:

    debug(hevake_lcj is here)

    在宏處理後的檔案中會變成:

    printf("error--%d : " "hevake_lcj is here" "\n",14);

-o    生成可執行檔案(預設)

    gcc -o main main.o    由目标檔案生成

    gcc -o main main.s    由彙編檔案生成

    gcc -o main main.e    由宏處理後的檔案生成

    gcc -o main main.c     由源檔案生成

    指明生成的檔案名

    gcc -s -o main.ss main.c //生成彙程式設計式檔案,檔案名為main.ss,否則預設為*.s

-g    在生成的彙編代碼中加入調試用的資訊

    gcc -g -s -o main.s main.c

    gcc -s -o main.s main.c       //生成的資料間的差别

-i    指定頭檔案路徑

    gcc -wall -i/usr/include/zw -o test test.c

-l    指定連接配接度的路徑

    gcc -wall -l/usr/x11r6/lib -o test text.c-ix11

繼續閱讀