Makefile中使用变量(嵌入式)
Makefile是一种常用的构建工具,它可以帮助我们自动化构建和编译项目。在Makefile中,我们可以使用变量来存储和管理各种值,例如文件路径、编译选项和命令等。这篇文章将介绍如何在Makefile中使用变量,并提供一些示例代码。
- 定义变量
在Makefile中,我们可以使用=或者:=来定义一个变量。=定义的变量是简单展开的,而:=定义的变量是递归展开的。下面是一个示例:
# 简单展开的变量
SRCDIR = src
OBJDIR = obj
# 递归展开的变量
CC := gcc
CFLAGS := -Wall -O2
在上面的示例中,SRCDIR和OBJDIR是简单展开的变量,而CC和CFLAGS是递归展开的变量。
- 使用变量
定义了变量后,我们可以在Makefile中使用它们。例如,我们可以将变量用作目标文件的路径或编译命令中的选项。
# 使用变量作为目标文件路径
$(OBJDIR)/foo.o: $(SRCDIR)/foo.c
$(CC) $(CFLAGS) -c $< -o $@
# 使用变量作为编译命令中的选项
$(OBJDIR)/bar.o: $(SRCDIR)/bar.c
$(CC) $(CFLAGS) -I$(SRCDIR) -c
本文介绍了Makefile中如何定义和使用变量,包括简单展开与递归展开的变量,以及特殊变量如$(basename)和$(notdir)。通过示例代码展示了如何利用变量简化Makefile的编写,提高灵活性和可维护性。
订阅专栏 解锁全文
1122

被折叠的 条评论
为什么被折叠?



