本例由 main.c add.c sub.c add_sub.h 四个文件组成:编写Makefile执行程序
1 /*************************************************************************
2 > File Name: main.c
3 > Author:
4 > Mail:
5 > Created Time: Tue 25 Jul 2017 10:40:22 AM CST
6 ************************************************************************/
7
8 #include<stdio.h>
9 #include"add_sub.h"
10 int main()
11 {
12 printf(" 2 + 3 = %d\n", add(2, 3));
13 printf(" 2 - 3 = %d\n", sub(2, 3));
14 return 0;
15 }
1 /*************************************************************************
2 > File Name: add.c
3 > Author:
4 > Mail:
5 > Created Time: Tue 25 Jul 2017 10:36:26 AM CST
6 ************************************************************************/
7 #include "add_sub.h"
8
9 int add(int a, int b)
10 {
11 return a + b;
12 }
1 /*************************************************************************
2 > File Name: sub.c
3 > Author:
4 > Mail:
5 > Created Time: Tue 25 Jul 2017 10:37:54 AM CST
6 ************************************************************************/
7
8 #include "add_sub.h"
9
10 int sub(int a, int b)
11 {
12 return a - b;
13 }
1 /*************************************************************************
2 > File Name: add_sub.h
3 > Author:
4 > Mail:
5 > Created Time: Tue 25 Jul 2017 10:38:53 AM CST
6 ************************************************************************/
7
8 #ifndef _ADD_SUB_H
9 #define _ADD_SUB_H
10 int add(int a, int b);
11 int sub(int a, int b);
12 #endif
Makefile的内容:
我们可以把这个内容保存在文件为“Makefile”或“makefile”的文件中,然后在该目录下直接输入命令“make”,就会在当前目录下找名字叫“Makefile”或“makefile”的文件,可以生成执行文件main。
1 main: add.o sub.o main.o 2 gcc add.o sub.o main.o -o main 3 4 add.o: add.c add_sub.h 5 gcc -c add.c -o add.o 6 7 sub.o: sub.c add_sub.h 8 gcc -c sub.c -o sub.o 9 10 main.o:main.c add_sub.h 11 gcc -c main.c -o main.o 12 clean: 13 rm -rf *.o main
生成方法必须以TAB开头;若尝试用空格缩进会出现错误!
实验结果:
如果要删除执行文件和所有的中间目标文件,那么,只要简单地执行一下“make clean”就可以了。