是否可以将gcc配置为不在警告/错误消息中打印出完整路径?

8 gcc

当gcc打印出警告或错误时,它会显示包含错误的文件的完整路径.是否有一个标志可以将输出缩短为文件名?

Mar*_*off 7

这取决于你如何调用gcc:

/tmp/c$ gcc -Wall bad.c
bad.c:1: warning: return type defaults to ‘int’
bad.c: In function ‘main’:
bad.c:1: warning: control reaches end of non-void function

VS

/tmp/c$ gcc -Wall /tmp/c/bad.c
/tmp/c/bad.c:1: warning: return type defaults to ‘int’
/tmp/c/bad.c: In function ‘main’:
/tmp/c/bad.c:1: warning: control reaches end of non-void function

VS

/tmp/c$ gcc -Wall ../../tmp/c/bad.c
../../tmp/c/bad.c:1: warning: return type defaults to ‘int’
../../tmp/c/bad.c: In function ‘main’:
../../tmp/c/bad.c:1: warning: control reaches end of non-void function

bad.c的内容只是

main() { }
Run Code Online (Sandbox Code Playgroud)

如果有人关心.

  • 是的,这是有效的,但如果已经建立了复杂的构建系统呢?如果我可以向CFLAGS添加一些内容以清除输出,那就太好了. (2认同)