我有一个makefile,可以编译我项目中的每个.c文件.对于每个文件,我将整个编译命令打印到shell,包含所有选项和标志.这是一个文件的示例输出:
arm-none-eabi-gcc -c -mcpu = cortex-m3 -O0 -dM -g -gdwarf-2 -mthumb -fomit-frame-pointer -fverbose-asm -Wa,-ahlms = src/sim/sim_configuration.lst -include ./lib/stm32core/stm32f2xx_conf.h-I.-I./lib/ARMStandardLibrary -I./lib/LwIP -I./lib/LwIP/src/include -I./lib/LwIP/src/include -I./lib/LwIP/src/include/ipv4 - I./lib/LwIP/src/include/ipv6 -I./lib/FatFS -I./lib/stm32core -I./src -I./src/sim -I./src/sd -I./src/tftp src/sim/sim_configuration.c -o src/sim/sim_configuration.o
问题是在整个命令输出的混乱中会丢失各种警告.有没有办法只打印出现的警告和错误(不是原始命令)?
jxh*_*jxh 19
执行make与-s选项.从手册页.
-s, --silent, --quiet
Silent operation; do not print the commands as they are executed.
Run Code Online (Sandbox Code Playgroud)
只需在@符号前加上命令即可.
如果您依赖内置的隐式规则,则必须将它们显式化,或者在特定情况下,您可以使用:
.SILENT: *.o
Run Code Online (Sandbox Code Playgroud)
用于静默用于构建%.o目标的所有命令.