【问题标题】:g++ wont compile std=c++0x under Snow Leopard雪豹下g++不会编译std=c++0x
【发布时间】:2012-09-29 12:03:28
【问题描述】:

拥有一台带有 Snow Leopard 的旧 Intel Core Duo MacBook,当我尝试使用 g++ 和输入参数 std=c++0x 进行编译时,我得到:

cc1plus: error: unrecognized command line option "-std=c++0x"

关于如何解决这个问题的任何想法?

【问题讨论】:

    标签: c++ gcc c++11 g++ osx-snow-leopard


    【解决方案1】:

    c++0x / c++11 支持仅从 gcc v4.3 开始添加,请参阅 this page 以查看在哪个 gcc 版本中添加了哪些 c++ 功能。

    您也可以使用 clang++ 编译器,它也是 XCode 的标准配置。版本信息见this page

    或者从macports安装gcc47

    顺便说一句,最好使用-std=c++11,clang 不支持c++0x 选项。

    【讨论】:

    • 当然,在使用 g++ 时,-std=c++11(与 c++0x 不同)仅从 g++4.7 开始受支持,因此在不久的将来,更好的选择取决于您需要的编译器兼容。
    • gcc/g++ 在 macports 安装上安装为 g++-mp-v,其中 v 是版本号。您可以立即检查是否有任何 mp 版本,方法是输入 gcc-mp 并点击 tab 以完成制表符,或者 g++-mp 并执行相同操作。
    猜你喜欢
    • 1970-01-01
    • 2011-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-05
    • 1970-01-01
    • 1970-01-01
    • 2022-01-11
    相关资源
    最近更新 更多