一,简介
在编写Makefile时,需要将对应的.c文件全部获取到,如果手动添加或者删除,效率太低,也容易出问题。
本文就介绍在Makefile中如何使用命令进行获取指定目录下的所有.c文件或者.h文件。
二,命令介绍
1,使用wildcard命令和通配符“ * ”即可获取指定文件夹下的所有.c文件。
# 获取指定目录及其子目录下的所有.c文件
SRCS := $(wildcard src/**/*.c)
# 编译目标
target: $(SRCS)
$(CC) $(CFLAGS) $(SRCS) -o target
2,Makefilez中打印变量的值
# 定义一个变量
VAR := Hello, World!
# 打印变量并输出
print_var:
@$(info The value of VAR is $(VAR))
在上述代码中,定义了一个名为VAR的变量,并赋值为Hello, World!。
在目标print_var的规则中,使用 ( i n f o ) 函数来输出变量 V A R 的值。 (info)函数来输出变量VAR的值。 (info)函数来输出变量VAR的值。(info)函数类似于一个打印语句,可以在编译时输出信息到标准输出。
在命令前面添加@符号可以禁止Make工具打印该命令本身,只输出命令的执行结果。
使用make print_var命令执行该Makefile,则会输出The value of VAR is Hello, World!到标准输出。
三,总结
本文主要介绍如何在Makefile中添加指定目录下的所有.c文件。以及在Makefile中打印信息的方法