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
相关文章
相关标签/搜索