【问题标题】:How to add compiler arguments for LLVM -clang-cl in Visual Studio 2019?如何在 Visual Studio 2019 中为 LLVM -clang-cl 添加编译器参数?
【发布时间】:2020-11-13 15:10:46
【问题描述】:

我实际上不确定如何为 clang 正确添加参数。我很确定问题出在不正确的语法上。例如,在“属性”>“命令行”>“附加选项”中添加“-fno-vectorize”(如 here)时,编译器会告诉我

1>clang-cl : warning : unknown argument ignored in clang-cl: '-fno-vectorize' [-Wunknown-argument]

所以,编译器看到了参数,只是没有正确解析它们。

对于 MSVC 标志看起来像“/Qpar”(例如这个打开自动并行化),它工作得很好。

【问题讨论】:

    标签: c++ visual-studio command-line-arguments llvm-clang


    【解决方案1】:

    我相信 clang-cl 的参数语法与 clang 不同。 对于大多数参数,您可以参考 MSVC 文档。

    通常,这意味着将“-”替换为“/”,将“=”替换为“:”,就像这样,但有时参数完全不同。

    -std=c++17
    

    通过

    /std:c++17
    

    要告诉 clang 和 clang-cl appart,可以使用如下:

    elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
        if ("${CMAKE_CXX_SIMULATE_ID}" STREQUAL "MSVC")
    

    这里讨论过:How to differentiate between clang and clang-cl?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-19
      • 1970-01-01
      • 2012-02-27
      • 1970-01-01
      • 2020-03-12
      相关资源
      最近更新 更多