用法: gcc [...] filenamesbash
例如: gcc hello.c ide
輸出: a.out優化
過程: hello.c 預變異 hello.i 編譯後 hello.s 彙編後 hello.o 連接後 hello調試
預編譯: 源碼
gcc -E hello.c -o hello.i
編譯 : it
gcc -S hello.i -o hello.s
彙編 : 編譯
gcc -C hello.s -o hello.o
連接 : class
gcc hello.o -o hello
文件格式:gcc
*.c C語言源碼file
*.h 頭文件
*.a 庫文件
*.o 目標文件
*.C *.cc *.cpp C++文件
*.s *.S 彙編文件
gcc編譯選項:
-o 指定輸出可執行文件
-O 對程序進行優化編譯
-O2 對程序更好的編譯,消耗更多的時間
-c 只編譯不鏈接,輸出*.o目標文件
-g 產生gdb所須要的符號,用於調試
Linux系統頭文件通常存放於/usr/include中,若頭文件存放在當前目錄,引用格式爲:
#include "XXX.h"
或者用-I選項指定頭文件存放地方,如:
gcc -I /root hello.c -o hello
預編譯的使用:
#define PRINT
#ifdef PRINT
...
#endif