首先我们先创建两个简单的文件:
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为通用型的
Makefile2文件
main:main.o extern.o
gcc -o $@ $^ %.o:%.c
gcc -o $@ -c $< clean:
rm *.o main
执行结果:
使用-f参数可以指定其他文件作为makefile的文件
注意执行make命令不一定会生成目标文件,需要源文件有改动或者目标不存在才会重新生成