在Mac终端中,Clang++无法理解C++11

5

我正在尝试在Mac终端中编译一些带有C++11的C++代码。 我已经尝试了

clang++ -std=c++11 main.cpp

但是我遇到了错误

error: invalid value 'c++11' in '-std=c++11'

我的xcode完全是最新的,我猜想我在终端中做错了什么?代码在xcode本身中运行得很好,但我无法让它在终端中运行。有什么建议吗?


7
请尝试使用-std=c++0x参数。 - Andy Prowl
3
-std=c++11应该能够与最近的clang版本一起使用。你更新了命令行工具吗(需要手动完成),参见https://dev59.com/U2ox5IYBdhLWcg3wQSEO - erikced
3
是的,你需要更新。如果它不接受 c++11 的话,那就太老了。(你可能需要使用 -v 标志来检查。) - Potatoswatter
2个回答

1
正如Andy所说,你的编译器只接受-std=c++0x。它可能相当古老。
[仅回答以从未回答的问题队列中移除此问题]

0

我不确定这一点,但根据我的经验,在Xcode中保持最新可能并不意味着您在clang方面也是最新的。我曾经在尝试在Mac OSX Mountain Lion上使用g++编译c ++代码时遇到问题。我的Xcode是最新的,但gcc是旧的(4.2.1)。我不得不从http://hpc.sourceforge.net(4.8.1)安装最新版本的gcc。现在它可以工作了。我使用g++ -std=c++11进行编译。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接