Cmake 如果不是在clang命令行中,这个构建标志从何而来
我有一个铿锵的建造线,看起来像这样:Cmake 如果不是在clang命令行中,这个构建标志从何而来,cmake,clang++,Cmake,Clang++,我有一个铿锵的建造线,看起来像这样: bin/clang++ -Werror=foo -Wno-bar... 等等。基本上有一堆警告和错误标志。好吧,这是有道理的。然后,我得到一个错误,例如: error: implicit conversion loses integer precision: 'ulong' (aka 'unsigned long') to 'int') [-Wshorten-64-to-32] 其中-Wshorten-64-to-32不是上述clang++命令中的标志。
bin/clang++ -Werror=foo -Wno-bar...
等等。基本上有一堆警告和错误标志。好吧,这是有道理的。然后,我得到一个错误,例如:
error: implicit conversion loses integer precision: 'ulong' (aka 'unsigned long') to 'int') [-Wshorten-64-to-32]
其中-Wshorten-64-to-32不是上述clang++命令中的标志。所以它一定是从那条线以外的地方来的。clang可以使用命令行之外的标志吗?我的理解是,它使用的所有标志都将直接打印在该命令上。默认情况下,许多警告处于打开状态,而其他警告则通过一次隐式启用多个警告类别的选项(如
-Wall
、-Wextra
)启用
将报告警告类别-Wshorten-64-to-32
,以便您可以通过在命令行中添加-Wno-shorten-64-to-32
来关闭特定警告(如果您不喜欢)