工程包含了hong.c,hong.h兩個檔案
功能:通過make命令編譯(gcc環境下),得到hong.o和main,執行./mian可以看到函式結果
檔案
//標頭檔案包含
#ifndef hong_
#define hong__
void inv(int x,int n);
void in_turn();
#endif
檔案
#include#include"hong.h"
int main()
; printf("the original array:\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n"); //輸出陣列
inv(a,10);
printf("the array has been inverted:\n"); //反過來輸出陣列
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
in_turn(); //選擇字母,列印結果
return 0;
} void inv(int x,int n)
return;
}void in_turn()
#makefile 檔案
#main 依賴於hong.o hong.c hong.h
#這裡要是不想生成.o檔案可以將它去掉
main:hong.o hong.c hong.h
#通過編譯鏈結生成可執行檔案./main
gcc hong.c -o main
#hong.o依賴於hong.c hong.h
hong.o:hong.c hong.h
gcc -c hong.c
#gcc -o main main.c
./phony clean:
clean:
rm -rf *.o
注意:makefile的命令列一定要以tab鍵開頭,不然編譯會報錯
簡單編寫makefile
乙個makefile基本的規則 a b tab tab a為目標檔案,b為依賴檔案 可能含有多個 接下來為命令 必須含有tab 操作依賴檔案得到目標檔案 以乙個簡單的示例來演示如何編寫乙個基礎的makefile ifndef file1 h define file1 h ifdef cplusplu...
編寫簡單的makefile
假如有乙個上百個檔案的 構成的專案,如果只是對其中乙個或少數幾個檔案進行了修改,若用gcc編譯工具就不得不把整個專案裡的檔案重新編譯一遍。編譯過程分為編譯 彙編鏈結等階段。其中,編譯階段僅檢查語法錯誤以及函式與變數的宣告是否正確,在鏈結階段則主要完成函式鏈結和全域性變數的鏈結。因此,沒有改動的源 根...
簡單的makefile編寫
cc gcc cflags wall i home coc target sysroots corei7 64 poky linux usr include libxml2 ldflags l home coc target sysroots corei7 64 poky linux usr lib...