makefile :=
时间: 2023-08-05 09:37:42 浏览: 55
Makefile 是一种常用的构建工具,用于自动化编译和构建程序。Makefile 文件是由一系列规则组成的脚本,每个规则由一个目标、依赖关系和一组命令组成。当执行 make 命令时,Makefile 文件会被读取并按照规则自动执行相应的命令,以生成目标文件。
下面是一个简单的 Makefile 示例:
```
CC=gcc
CFLAGS=-Wall -Werror
all: program
program: main.o utils.o
$(CC) -o program main.o utils.o
main.o: main.c
$(CC) $(CFLAGS) -c main.c
utils.o: utils.c
$(CC) $(CFLAGS) -c utils.c
clean:
rm -rf *.o program
```
在这个示例中,我们定义了一个 CC 变量来指定编译器为 gcc,一个 CFLAGS 变量来指定编译选项为 -Wall -Werror。接着定义了一个 all 目标,它依赖于 program 目标。program 目标依赖于 main.o 和 utils.o 两个文件,生成 program 可执行文件。main.o 和 utils.o 分别依赖于 main.c 和 utils.c 两个源文件,生成对应的目标文件。最后定义了一个 clean 目标,用来清除所有生成的目标文件和可执行文件。
执行 make 命令时,会按照这些规则自动执行相应的命令,生成最终的可执行文件 program。执行 make clean 命令时,会清除所有生成的目标文件和可执行文件。