聲明:本人linux菜鳥一個,之是以學習linux 的makefile 是自己在android NDK的時候經常遇到很多看不懂的android.mk檔案,就想從linux開始着手,不喜勿噴...
1.将多個檔案通過makefile 編譯成一個執行檔案,代碼來源linux程式設計第三版
charter01中的lib.h bill.c fred.c program.c
#lib.h 聲明兩個函數
void bill(char *);
void fred(int);
#bill.c 實作lib.h中的bill函數
#include <stdio.h>
void bill(char *arg)
{
printf("bill: you passed %s\n", arg);
}
#fred.c 實作lib.h中的方法
#include <stdio.h>
void fred(int arg)
{
printf("fred: you passed %d\n", arg);
}
#program.c 主函數調用bill.c中實作了libh的函數
#include "lib.h"
int main()
{
bill("Hello World");
}
基本代碼結束
在目前項目檔案夾下建立#include "lib.h"
int main()
{
bill("Hello World");
}
基本代碼結束
在目前檔案夾下建立Makefile檔案
#Makefile
obj=lib.h bill.c fred.c program.c
test: $(obj)
@gcc $(obj) -o test
裡面具體的makefile指令參數解析請看http://v.youku.com/v_show/id_XNjU1Mzk1MDk2.html 這裡的教程,簡單講就是
目标:依賴
gcc 指令
我自己隻是為了身為菜鳥的我能簡單的使用make 指令就能看到生成可執行檔案就很滿足了.
makefile檔案寫完後ctrl+alt+T 快捷鍵打開指令終端 cd 一直進入到項目檔案目錄 之後 make 回車看到生成了個test可執行檔案
使用gdb test 進入gdb調試
輸入run 就會看到輸出結果了
再輸入quit 就可以退出gdb 回到指令終端
簡單的第一個makefile檔案結束了