回覆列表
-
1 # 許爍爍爍
-
2 # 藍風24
假設有下面幾個c++檔案:
wherewhen.h wherewhen.c
countdown.h countdown.c 包含了math.h, 需要連線庫檔案
main.c 主函式, main.c 包含了兩個標頭檔案 wherewhen.h and countdown.h
1、第一種編譯方法:
g++ -Wall -g wherewhen.c countdown.c main.c -lm -o myprogram
生成可執行檔案myprogram
2、第二中編譯方法, 分別編譯各個檔案:
g++ -Wall -g -c wherewhen.c
g++ -Wall -g -c countdown.c
g++ -Wall -g -c main.c
g++ -g wherewhen.o countdown.o main.o -lm -o myprogram
1.所有原始檔沒動過,時間戳沒有變,任何操作都沒有;
2.生成的中間檔案和目標檔案都在,沒動過;
3.我的makefile是把不同目錄生成的所有中間檔案都移到同一個obj目錄,最後在連結生成目標檔案