gcc -wall -w -werror hello.cpp -o hello
告诉我:gcc:错误:无法识别的命令行选项'-wall',并且==> gcc:错误:无法识别的命令行选项'-werror'</p>
gcc -wall -w -werror hello.cpp -o hello
告诉我:gcc:错误:无法识别的命令行选项'-wall',并且==> gcc:错误:无法识别的命令行选项'-werror'</p>
尝试使用-W all 和大写 W。命令行选项区分大小写。
-Wall 这会启用所有关于一些用户认为有问题的结构的警告,并且很容易避免(或修改以防止警告),即使与宏一起使用。这也启用了 C++ 方言选项和 Objective-C 和 Objective-C++ 方言选项中描述的一些特定于语言的警告。
对于 werror,请使用-W错误和大写 W
-Werror= 将指定的警告变成错误。附加了警告的说明符;例如 -Werror=switch 将 -Wswitch 控制的警告变成错误。此开关采用否定形式,用于否定 -Werror 的特定警告;例如 -Wno-error=switch 使 -Wswitch 警告不是错误,即使 -Werror 生效。每个可控警告的警告消息包括控制警告的选项。然后,该选项可以与 -Werror= 和 -Wno-error= 一起使用,如上所述。(可以使用 -fno-diagnostics-show-option 标志禁用打印警告消息中的选项。)
请注意,指定 -Werror=foo 会自动暗示 -Wfoo。但是, -Wno-error=foo 并不意味着什么。