1、Makefile規則
2、Makefile案例-多個文件生成一個目標文件
3、Makefile–生成多個目標文件
4、Makefile包含 頭文件和庫文件
bash
咱們工做的時候常常會遇到 要多寫幾個不一樣的測試案例,去測試不一樣的功能,這個時候 須要編譯多個 可執行文件。
假如咱們的目錄下有三個原文件須要編譯成可執行文件
test1.c test2.c test2.c
test1.c
測試
#include <stdio.h> void doFunc1(void) { } int main(int argc, char **argv) { doFunc1(); return 0; }
test2.cui
#include <stdio.h> void doFunc2(void) { } int main (int argc, char **argv) { doFunc2(); return 0; }
test3.cspa
#include <stdio.h> void dofunc3(void) { } int main(int argc, char **argv) { fofunc3(); return 0; }
Makefile 編譯生成多個 可執行文件.net
TARGET1 = test1 TARGET2 = test2 TARGET3 = test3 .PHONY: all all: $(TARGET1) $(TARGET2) $(TARGET3) $(TARGET1): $(TARGET1).o $(GCC) -o $< $@ $(TARGET2): $(TARGET2).o $(GCC) -o $< $@ $(TARGET3): $(TARGET3).o $(GCC) -o $< $@ #Build object %.o:%.c $(GCC) -c $< -o $@ .PHONY: clean clean: -@rm -f $(TARGET1) $(TARGET1).o -@rm -f $(TARGET2) $(TARGET2).o -@rm -f $(TARGET3) $(TARGET3).o