Makefile(一)

在一个文件夹中建一个c文件

//main.c
#include<stdio.h>
int main()
{
    printf("version 1.0");
    return 0;
}

在当前目录下编写makefile文件

//makefile:
test : main.o    //一种依赖关系声明,生成test可执行程序需要以来main.o文件
        gcc -o test main.o        //一个终端命令,执行该命令,gcc使用main.o文件生成test
main.o : main.c
        gcc -c main.c
clean:    //清除命令,不依赖任何文件
        rm test main.c

解释:

在文件目录下执行make:

首先是test:main.o依赖声明生成test需要main.o文件

make命令检查main.o是否存在(最新)

  • 如果存在(或最新),则执行gcc -o test mian.o命令,生成test;
  • 如果不存在(或不是最新),则去生成main.o;

main.o生成,依赖检查main.c是否存在(或最新)

  • 如果存在(或最新),则执行表达式gcc -c main.c命令,生成main.o 
  • 如果不存在,则报错。

 注意:

所有makefile指令前都需要两个tab缩进

执行完make命令后,会生成main.o 和 可执行文件 test

原文地址:https://www.cnblogs.com/wanghao-boke/p/10980428.html