网站建设与运营财务预算,线上推广费用预算,南昌做网站的公司哪家好,wordpress视频发布站主题(1)普通变量
如#xff1a;
objmain.o add.o sub.o mul.o div.o //将后面的值赋值给obj#xff0c;obj就是一个普通变量
targetzsx //将zsx赋值给target
makefile中已经定义的一些普通变量#xff08;通常格式都是大写#xff0c;类似环境变量#xff0c;它们都是普通…(1)普通变量
如
objmain.o add.o sub.o mul.o div.o //将后面的值赋值给objobj就是一个普通变量
targetzsx //将zsx赋值给target
makefile中已经定义的一些普通变量通常格式都是大写类似环境变量它们都是普通变量直接赋值即可任意类型皆可CC其值为gcc或cccc就是gcc完全等价且用户还可以修改这些值。 (2)自动变量
$: 规则中的第一个依赖 $: 规则中的目标 $^: 规则中的所有依赖
注意这些变量只能在规则的命令中使用 (3)举例
则通过使用自动变量和普通变量可以简化makefile的书写下面举例说明。依然使用上篇的文章的例子。
[rootlocalhost src]# vim makefile
objmain.o add.o sub.o mul.o div.o //普通变量 targetzsx //普通变量
$(target):$(obj) $(CC) -ggdb3 $^ -o $ //自动变量只能使用在命令中
main.o:main.c $(CC) -pedantic -pipe -Wall -c $^ -o $ -I ../include //单独拿出来 是因为其需要指明头文件而头文件在另一个目录中
%.o:%.c $(CC) -pedantic -pipe -Wall -c $ -o $
[rootlocalhost src]# ls add.c div.c main.c makefile mul.c sub.c [rootlocalhost src]# make cc -pedantic -pipe -Wall -c main.c -o main.o -I ../include cc -pedantic -pipe -Wall -c add.c -o add.o cc -pedantic -pipe -Wall -c sub.c -o sub.o cc -pedantic -pipe -Wall -c mul.c -o mul.o cc -pedantic -pipe -Wall -c div.c -o div.o cc -ggdb3 main.o add.o sub.o mul.o div.o -o zsx
[rootlocalhost src]# ls add.c add.o div.c div.o main.c main.o makefile mul.c mul.o sub.c sub.o zsx [rootlocalhost src]# ./zsx sum 26