我能够在Linux上更新gcc以获得-std = c ++ 17,但在Mac上却无法做到这一点。是否有一个版本的Clang我可以更新或在我的Mac上获得C ++ 17的其他替代方案?请帮忙。谢谢。
在我的10.11 El Capitan,Xcode 7.3.1上,clang已更新为:
Apple LLVM version 7.3.0 (clang-703.0.31)
这几乎相当于llvm版本3.8。 clang++
没有-std=c++17
选项,但-std=c++1z
,目前运作良好,虽然只支持C ++ 1z的一些功能。
对于gcc,您可以通过以下方式安装一个非常新的:
brew install gcc --HEAD
现在将安装gcc-6.1,(2016.8)。这个gcc对C ++ 17的支持有限,可以通过-std=c++17
启用。
一些更新:
相应的llvm版Apple's clang最近不清楚,应该是3.9+或4+。查看this wiki page了解更多信息。
brew install gcc --HEAD
应该始终适用于mac / homebrew,并为您提供具有许多实验性功能的尖端gnu gcc。另一方面,正常的brew install gcc
应该安装一个支持大多数c ++ 17功能的gcc。
对于语言标准参数,请尝试-std=c++17
和-std=c++1z
用于不同的编译器,其中一个应该可以工作。
也许您应该使用以下命令安装xcode命令工具:
xcode-select --install