makefile 输出信息
时间: 2023-11-10 21:05:26 浏览: 42
在 Makefile 中,我们可以使用 @ 符号来使命令不显示在终端上,也可以使用 echo 命令来输出信息。例如:
```
all:
@echo "Compiling program..."
gcc -o program main.c
@echo "Program compiled successfully."
```
在这个例子中,当我们运行 make 命令时,会先输出 "Compiling program...",然后编译程序,最后输出 "Program compiled successfully."。使用 @ 符号可以使输出更加清晰,避免干扰编译信息。
相关问题
makefile 输出目标文件
可以通过在 Makefile 文件中定义规则来输出目标文件。下面是一个示例 Makefile 文件:
```
CC = gcc
CFLAGS = -Wall -Werror
all: program
program: main.o helper.o
$(CC) $(CFLAGS) -o program main.o helper.o
main.o: main.c helper.h
$(CC) $(CFLAGS) -c main.c
helper.o: helper.c helper.h
$(CC) $(CFLAGS) -c helper.c
clean:
rm -f program *.o
```
在这个 Makefile 文件中,我们定义了一个名为 program 的目标文件,它依赖于 main.o 和 helper.o 两个目标文件。我们使用 gcc 编译器编译这些目标文件,并使用 -o 选项将它们链接成一个可执行文件 program。
我们还定义了两个规则来编译 main.c 和 helper.c 两个源文件,它们分别生成对应的目标文件 main.o 和 helper.o。
最后,我们定义了一个名为 clean 的伪目标,用于清除生成的目标文件和可执行文件。
要输出目标文件,只需要在命令行中执行 make 命令即可。例如,要生成 program 文件,可以执行以下命令:
```
$ make program
```
makefile输出字符串
要在 makefile 中输出字符串,可以使用 echo 命令。例如,要输出 "Hello, world!",可以在 makefile 中添加以下内容:
```
all:
@echo "Hello, world!"
```
在命令行中运行 make 命令后,将会看到输出结果为:
```
Hello, world!
```