Makefile文件编写规则概述

Makefile的编写
target:目标文件1 目标文件2
gcc -o 欲建立的可执行文件 目标文件1 目标文件2
目标文件也就是依赖文件

Makefile中#代表注释(单行)
与bash shell脚本的语法有点不太相同,变量的基本语法为:
1.变量与变量内容以【=】隔开,同时两边可以具有空格;
2.变量左边不可以有, 例如上面范例的第一行LIBS左边不可以是
3.变量与变量内容在【=】两边不能具有【:】;
4.在习惯上,变量最好是以【大写字母】为主;
5.运用变量时,以${变量}或$(变量)使用;
6.在该shell的环境变量是可以被套用,例如提到的CFLAGS这个变量;
7.在命令行模式也可以设置变量。

a.out:main.o libadd.so
	cc main.o libadd.so -o a.out

main.o:main.c
	cc -c main.c

libadd.so:add.o
	cc -shared add.o -o libadd.so

add.o:add.c
	cc -c add.c

clean:
	rm -f *.o

=============================================================
a.out是终极目标,紧跟其后的是需要的依赖文件。make命令会自动向下找生成依赖的子目标main.o和libadd.so。
但是单执行make命令不加参数只会默认执行终极目标,所以clean那里的命令是不会执行的,单独执行make clean(tab可补全)即可删除中间文件

posted @ 2021-08-30 14:36  liuhengzhi  阅读(508)  评论(0编辑  收藏  举报