首先我们先创建两个简单的文件:

main.c

#include <stdio.h>


extern void hi_fun();

int main()
{
printf("hello world\r\n");
hi_fun();

return 0;
}

 extern.c

#include <stdio.h>

void hi_fun()
{
printf("Hi zhuangzb\r\n");
}

 Makefile文件:

main:main.o extern.o
gcc -o main main.o extern.o

main.o:main.c
gcc -o main.o -c main.c

extern.o:extern.c
gcc -o extern.o -c extern.c

clean:
rm *.o main

 编译与执行结果

Makefile的简单编写【学习笔记】_#include

修改Makefile为通用型的

Makefile2文件

main:main.o extern.o
gcc -o $@ $^

%.o:%.c
gcc -o $@ -c $<

clean:
rm *.o main

 执行结果:

使用-f参数可以指定其他文件作为makefile的文件

Makefile的简单编写【学习笔记】_#include_02

注意执行make命令不一定会生成目标文件,需要源文件有改动或者目标不存在才会重新生成

Makefile的简单编写【学习笔记】_源文件_03