我已经安装了clang 3.7,并且正在Visual Studio中使用它。当我尝试编译时:
auto f()
{
return 2;
}
我收到错误消息,说这是C ++ 14的未来。我试图传递:
-std = c ++ 14作为编译器参数,但随后出现错误:
错误1错误:未知参数:'-std = c ++ 14'C :\ Users ... \ visual studio 2013 \ Projects \ ConsoleApplication8 \ ConsoleApplication8 \ clang-cl.exe ConsoleApplication8。
有什么想法如何在Visual Studio 2013下在clang中启用c ++ 14功能吗?
编辑:
我必须补充一点,我能够在Visual Studio下使用此编译器编译和构建c ++ 11代码,而不会出现任何问题。
clang-cl
不会使用与传统clang相同的选项语法-应该模仿Visual Studio的cl
命令行,而不是clang
命令行。
例如,来自clang-cl
的文档:
CL.EXE COMPATIBILITY OPTIONS:
/? Display available options
/arch:<value> Set architecture for code generation
/C Don't discard comments when preprocessing
/c Compile only
/D <macro[=value]> Define macro
...
请注意,这些选项类似于Microsoft的cl
选项语法,而不是clang
的选项语法。
但是,他们有一些传递选项来支持像您这样的案例:
OPTIONS:
...
-Xclang <arg> Pass <arg> to the clang compiler
-mllvm <value> Additional arguments to forward to LLVM's option processing
因此,看来调用clang-cl -Xclang -std=c++14
将是您最好的选择。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句