c++ - 如何编写目标为 "errors"的 makefile ?

标签 c++ c gcc makefile gnu

我需要将目标 errors: 添加到我当前的 makefile 中,以便编译器编译多个不同的程序时打印所有可能发生的错误消息,例如示例:

 error: expected ';' before 

在我当前的 makefile 中,我已经设置了 gcc 标志 -Wall-Wextra(对于目标 alldebug ) - 这足以生成错误消息的完整输出吗?

或者是否需要以更具体的方式设置目标错误

编辑:这是我当前的Makefile的一部分:

CC = gcc
CFLAGS = -std=c99 -Wall -Wextra

SRC = test.c // here I want to add more programs, how is this possible?
BIN = test

binary: $(SRC)
   $(CC) $(CFLAGS) -o $(BIN) $(SRC) $(LDFLAGS)

all: binary

最佳答案

您可以在 Makefile 的第一个目标之前添加

 .PHONY: all clean errors

并且您将在 Makefile 末尾添加

 errors: 
       $(MAKE) -k all

您应该阅读documentation of GNU make

顺便说一句,您可能指的是规则:

binary: $(BIN)

并且您应该避免将可执行文件命名为 test (这是许多 shell 中的内置命令,也是标准的 /usr/bin/test)

关于c++ - 如何编写目标为 "errors"的 makefile ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28987212/

相关文章:

c++ - opencv如何用鼠标事件不规则地选择图像区域? C/C++

c - 如何使我的输出仅显示我的 c 支票生成器程序所需的内容

c++ - 如何使 AddressSanitizer 不检查第三方库

c - MinGW GCC 无法识别 MEMSTATUSEX?

linux -/usr/include 中的头文件从哪里来? Linux 内核代码 或 Gcc

c++ - 如何重载用于初始化新对象的运算符=?

c++ - 使用 gcc 的 -fno-math-errno 可能产生哪些副作用?

c++ - 当我使用 win32 SendMessage 发送和转换标准字符串时,我得到了奇怪的字符

c - gcc/clang 对局部变量和结构字段使用限制关键字

C 编程 - 嵌套链接列表打印问题