3、Makefile--生成多個目標文件

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
相關文章
相關標籤/搜索