如何阻止"/Gm-"从CMake传递给clang_cl.exe

How to stop `/Gm-` being passed to clang_cl.exe from CMake

本文关键字:quot clang cl exe 何阻止 Gm- CMake      更新时间:2023-10-16

我正在使用clang在Windows上构建一个C++项目,并使用CMake生成项目。我是通过Visual Studio/MSBuild来做的。我已经为桌面安装了LLVM和VC++ 2015.3 v140工具集(x86,x64(。

要生成项目并构建,我这样做:

mkdir build
cd build
cmake .. -G "Visual Studio 15 2017 Win64" -TLLVM-vs2014
cmake --build .

当我构建时,我收到以下警告:

clang-cl.exe : warning : argument unused during compilation: '/Gm-' [-Wunused-command-line-argument]

当我打印${CMAKE_CXX_FLAGS}时,我得到:

/DWIN32 -fms-extensions -fms-compatibility -D_WINDOWS -frtti -fexceptions -Wall -Wextra -Wno-long-long -Wno-missing-braces

但是我没有看到-/Gm插入的位置或如何删除它。

这是有人以前遇到过的事情吗?

感谢您的帮助!

汤姆

这听起来像是一个Visual Studio错误 - 他们支持clang还为时尚早。

我认为你应该在这里做正确的事情并报告这一点。 Microsoft似乎正在做出真正的努力,在两个意义上都更加开放,如果我们想要一个好的产品,我们应该努力帮助他们。

我会关注那些反对票...