【发布时间】:2024-01-06 16:05:01
【问题描述】:
我正在尝试使用 clang 编译一个 android 内核,但我收到了我不关心的警告。对于编译,我使用命令make -j3 CC=clang O=output,所以我不能像使用命令clang file.c 一样添加-Wno-everything 参数。据我了解,我可以通过将#pragma 添加到导致错误的文件中来禁用一些警告。但我也有一个奇怪的错误,它没有引用任何文件:
warning: unknown warning option '-Wno-vectorizer-no-neon' [-Wunknown-warning-option]
如何关闭所有警告?或者至少是这个。
PS:对不起我的英语。
【问题讨论】:
-
大概
-Wno-unknown-warning-option会关闭有关未知选项的警告。但另一个问题是“为什么将未知的警告选项传递给编译器?” ——如果可以的话,解决这个问题是个好主意。通常,您想了解警告,尤其是在内核中,因为它们通常表示代码中的错误。但是,这则完全不同——如果您的代码没有使用它警告您缺少的功能,那么它对您或您的模块(内核)并不重要。 -
您使用的确切编译器版本是什么?
-
这取决于 Makefile,但通常您可以通过
CFLAGS来添加额外的编译器参数:CFLAGS=-Wno-everything。 -
@Thomas 谢谢,它看起来确实是一个解决方案,但我的 makefile 中有很多 CFLAGS)。看来我必须尝试一切:D
-
@Cheatah clang-r428724 (13.0.1)
标签: c compilation clang compiler-warnings pragma