makefile学习1:初识makefile

版权声明:欢迎转发,转发请标明出处 https://blog.csdn.net/weixin_39465823/article/details/88950323

大材小用一下,下面给一个源文件写makefile,认识一下makefile的依赖性。

源代码:

#include "std.h"

int main(int argv,char **argc)
{
	int arr[10] = {1,2,3,4,5,6,7,8,9,10};
	int i = 0;
	for(;i < 10;i++)
	{
		printf("%d\n",arr[i]);
	}
	return 0;
}

头文件:(std.h)

#ifndef _STD_H
#define _STD_H

#include <stdio.h>

#endif

makefile文件:

test:test.c std.h
	gcc test.c -o test

.PHONY:clean
clean:
	rm test 

执行:

gyz@debian:~/mc$ make
gcc test.c -o test
gyz@debian:~/mc$ ./test 
1
2
3
4
5
6
7
8
9
10
gyz@debian:~/mc$ make clean
rm test

可以看到最终的可执行文件是依赖于:后面的.c文件和.h文件的。

.PHONY是为了说明clean是个伪命令。

如果把makefile写成通用版本的,则变成:

test:test.o
	gcc -o test test.o
test.o:test.c std.h
	gcc -c test.c

.PHONY:clean
clean:
	rm test test.o

参考:http://www.cnblogs.com/liangxiaxu/archive/2012/07/31/2617384.html

猜你喜欢

转载自blog.csdn.net/weixin_39465823/article/details/88950323