1. 編譯c檔案生成可執行檔案(後續例子如無特殊說明均為c檔案):
gcc helloworld.c
2. 編譯c++檔案生成可執行檔案(用g++):
g++ helloworld.cpp
gcc -wall -g hello.c
4. 指定編譯後檔案的檔名(-o,不寫-o預設命名為a.out)
gcc -wall -g hello.c -o hello.exe
5. 編譯成彙編**(-s)
gcc -s hello.c -o hello.s
6. 使用編譯優化(-o1 -o2 -o3 數值越大效果越好)
gcc -o1 hello.c -o hello.exe
7. 編譯多個原始檔的程式(不用把.h檔案也寫進來)
gcc -wall -g hello1.c hello2.c -o hello.exe
8. 連線外部庫(-l +庫名)
gcc -wall -g cale.h -lm -o cale.exe
上例為連線數學庫libm.so,去掉字首lib,去掉字尾.so,剩下的就是庫名了(剩下了m),所以連線這個庫寫-lm
9. make的使用
當原始檔很多的時候可以使用make命令,在使用該命令之前,需要先在同資料夾下建立乙個makefile檔案,該檔案內容的格式為:
目標檔案:依賴檔案
命令
注:如果冒號下面接換行,必須輸入tab鍵(別的鍵不可以)。
下面是乙個makefile檔案的例子:
cc=gcc
cflags=-wall
hello.exe:hello1.o hello2.o
clean:
上面cc的意思是使用的編譯器(c++填寫g++),cflags如名字所示,就是後面跟的選項。
建立好makefile檔案之後,我們就可以使用make命令了,編譯命令:
make
簡單易懂。。。
使用makefile中的命令:
make clean
同樣簡單易懂。。。 gcc學習筆記
1 連線標頭檔案 gcc i usr openwim include fred.c 使用 i 標誌來包含儲存在子目錄或者非標準位置的中的標頭檔案。例如上邊語句指示編譯器不僅在標準位置,也在 usr openwim include 目錄中查詢程式 fred.c包含的標頭檔案。2 連線庫檔案 a 靜態庫...
gcc 學習筆記
gcc 編譯程式的過程 預處理 pre processing 編譯 compiling 彙編 assembling 鏈結 linking 選項名 作用 o 產生目標 i s o 可執行檔案等 c 通知gcc取消鏈結步驟,即編譯原始碼並在最後生成目標檔案 e 只執行c預編譯器 s 告訴編譯器產生組合語...
gcc學習筆記
預處理 gcc e hello.c o hello.i 輸出預處理後的檔案 編譯 gcc s hello.i o hello.s 輸出彙編結果 彙編 gcc c hello.s o hello.o 輸出二進位制檔案 鏈結 gcc hello.s o hello 輸出鏈結後的二進位制,沒有選項 wal...