在大学,我们被教导使用以下方式编译我们的项目:
gcc -Wall -Werror -ansi -o myfile.out myfile.c -lm
但是,我似乎无法在网上找到有关' Werror
'' {{1}}'呢?
答案 0 :(得分:3)
它将所有警告报告为错误,因此编译将停止而不继续。否则,只有警告会在-Wall
的控制台上显示,但编译不会停止。如果您想了解它,请前往gnu page
-Werror
Make all warnings into errors.
以下是一个示例代码:
#include <stdio.h>
int main()
{
int i;
printf("%s\n", "Good");
return 0;
}
当您通过-Werror
$ gcc -Wall -Werror -ansi abc.c
abc.c: In function ‘main’:
abc.c:5:9: error: unused variable ‘i’ [-Werror=unused-variable]
int i;
^
cc1: all warnings being treated as errors
如果没有-Werror
,它将编译并运行。
$ gcc -Wall -ansi abc.c
abc.c: In function ‘main’:
abc.c:5:9: warning: unused variable ‘i’ [-Wunused-variable]
int i;
^
$ ./a.out
Good