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