gcc編譯工具詳解

gcc識別的文件的擴展名以下:c++

.c c語言程序。工具

.i c語言預處理後的文件。優化

.C .cc. cpp. cp c++程序。調試

.ii c++預處理後的程序。編譯器

.S 彙編文件編譯

.s 預處理後的彙編文件。gcc

.o 編譯後的目標文件。擴展

.a 目標文件的靜態連接庫、配置

.so 目標文件的動態連接庫。file

gcc ,g++編譯選項。

-o file 指定生成輸出的文件名。

-E 只進行預處理

-S 只進行預處理和編譯

-c 只進行預處理和編譯和彙編,不連接。

-Wall 打印全部的警告。

-w 關閉全部的警告。

-0[0-3] 編譯器優化級別,0表示不優化。

-include file 插入一個文件。等同於源程序中的#include

-Dmacro[=def] 將名爲marco的宏定義爲def,若def忽略不寫,則marco=1

-Umacro 取消宏定義。

-v 顯示gcc工具的配置命令,預處理器和編譯器的版本號。

-ldir 將dir目錄加入頭文件搜索目錄列表,優先在dir目錄中包含的頭文件。

-Ldir 將dir目錄加入庫文件目錄列表,優先在dir目錄中查找庫文件。

-lname 連接庫爲name的庫

-static 連接時使用靜態庫

-shared 連接時使用動態庫

-g 在可執行文件中加入標準調試信息。

gcc舉例: gcc -E hello.c -o hello.i

gcc -S hello.i -o hello.s

gcc -c hello.s -o hello.o

gcc hello.o -o hello_elf

等同於: gcc hello.c -o hello_elf

相關文章
相關標籤/搜索