一:嵌套执行make
实践一下,加深对上面这段话的理解。
我的当前目录结构:
顶层目录的makefile
OBJS = main.o g_a.o g_b.o
target : main.o g_a.o g_b.o
gcc -o $@ $^
#%.o:%.c
$(OBJS):%.o : %.c
gcc -c $< -o $@
@echo $@
@echo $<
ss:
cd src/ && $(MAKE)
clean :
-rm target *.o
src目录里的makefile:
target : main.o
gcc -o target main.o
main.o : main.c
gcc -c main.c -o main.o
在顶层目录执行make ss命令时,会去执行src目录下的makefile编译工作,大家可以实践下。
当编译时,可以看到gcc的输出,离开了xxx,进入了xxx等信息。
如果有更深层次的目录结构,也是一样的用法。
其次,这个知识点还有子目录里利用顶层目录提供的变量,使用方法如下:
二:定义命令包
这段话有一些不理解,后续有空再研究下
在这里插入代码片