Makefile中如何获取指定目录下的所有.c/.h文件

一,简介

在编写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中打印信息的方法

你可能感兴趣的:(编译链接装载与库,工具使用,Makefile)