【问题标题】:Clang++ not understanding c++11 in mac terminalClang ++不理解mac终端中的c ++ 11
【发布时间】:2013-03-21 05:06:10
【问题描述】:

我正在尝试在 mac 终端中编译一些 c++ 代码(使用 c++11)。我试过了

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

但我得到了错误

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

我的 xcode 完全是最新的,我假设我在终端做错了什么?代码在 xcode 本身中运行良好,我只是无法让它在终端中运行。 任何提示都会很棒!

【问题讨论】:

  • 试试-std=c++0x
  • @AndyProwl 效果很好!谢谢
  • -std=c++11 应该适用于最近的 clang 版本。有没有更新命令行工具(需要手动完成),见stackoverflow.com/questions/9329243/…
  • 是的,您需要更新。如果它不接受c++11,那就太旧了。 (您可能需要检查 -v 标志。)

标签: c++ macos c++11 terminal clang++


【解决方案1】:

我对此不确定,但根据我的经验,在 Xcode 中保持最新可能并不意味着您在 clang 中也是最新的,我在尝试使用 g++ 编译 c++ 代码时遇到问题mac osx 山狮。我的 xcode 是最新的,但 gcc 是旧的(4.2.1)。我必须从http://hpc.sourceforge.net (4.8.1) 安装最新版本的 gcc。现在它可以工作了。我使用g++ -std=c++11 进行编译。

【讨论】:

    【解决方案2】:

    正如安迪已经说过的,你的编译器只接受-std=c++0x。它可能已经很旧了。

    [仅回答以从未回答的问题队列中删除问题]

    【讨论】:

      猜你喜欢
      • 2012-11-04
      • 2013-08-05
      • 2012-12-07
      • 2012-12-23
      • 2013-05-15
      • 2016-09-20
      • 2013-09-29
      • 1970-01-01
      • 2012-01-08
      相关资源
      最近更新 更多