c++ - clang-cl 和 CMAKE

标签 c++ cmake clang-cl

我尝试在 Windows 上使用 clang 使用 CMAKE 构建简单的程序,但 CMAKE 给了我错误。

CMake Error at C:/Program Files/CMake/share/cmake-3.14/Modules/CMakeDetermineCompilerId.cmake:859 (message): The Clang compiler tool

"C:/Program Files/LLVM/bin/clang++.exe"

targets the MSVC ABI but has a GNU-like command-line interface. This is not supported. Use 'clang-cl' instead, e.g. by setting 'CXX=clang-cl' in the environment.

所以我尝试设置 CXX=clang-cl 环境变量 但它仍然不起作用(相同的错误消息),尽管设置了 env 变量

echo %CXX%

clang-cl

所以我的问题是:有没有办法让 CMAKE 在 Windows 上与 clang-cl 或 clang 一起使用。

最佳答案

在 cmake-gui 中,您可以在可选工具集 -T 上选择 clangcl。 这是非常令人困惑的,因为在 Visual Studio 上它被称为 llvm (clang-cl) 而不是 clangcl。 我尝试了很多选项,并在 Visual Studio 文件夹中找到了名为 clangcl 的平台工具集文件夹。使用 cmake-gui 它对我来说工作得很好,我认为它也应该在命令行中工作。

关于c++ - clang-cl 和 CMAKE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55675128/

相关文章:

c++ - 在 C++ 中为 vector 编写自定义虚拟分配器时遇到问题

java - C++ Thrift : Can I use TFramedTransportFactory with TThreadedServer?

c++ - 在 C++ 中从 USB 端口发送和接收文件

C++ - 按字母顺序排列字符串

visual-studio - 如何从 cmake 设置 VS 项目的构建后命令?

无法在clion中运行c文件

c++ - CMake:构建库并将其链接到可执行文件导致 undefined reference 错误

c++ - 使用 Clang/VS-2019 构建的 MFC/DLL 中缺少 ATL::CStringT 函数

c++ - 我将什么标志传递给 clang-cl 以获取 time.h、_CSTD、正确的 wint_t 和 mbstate_t?