gcc 4.7 给我错误信息

Posted

技术标签:

【中文标题】gcc 4.7 给我错误信息【英文标题】:gcc 4.7 Give me error message 【发布时间】:2012-04-11 14:45:16 【问题描述】:

我有 Debian 6.04,包含的最新 gcc 版本是 gcc 4.4,这个版本不支持 C++11,我正在寻找另一个支持 C++11 的版本(某些功能不完全支持),所以我关注这个Page

我建议安装它,我的 NetBeans IDE 成功找到 gcc 4.7 并链接它,但是当我使用 std::unique_ptr 使用测试编译代码时,我收到以下错误消息:

此文件需要编译器和库支持 \ ISO C++ 2011 标准。这种支持目前是实验性的,必须是\ 使用 -std=c++11 或 -std=gnu++11 编译器选项启用。

我找到了错误来源,她是:

bits/c++0x_warning.h

#ifndef _CXX0X_WARNING_H
#define _CXX0X_WARNING_H 1

#ifndef __GXX_EXPERIMENTAL_CXX0X__
#error This file requires compiler and library support for the \
ISO C++ 2011 standard. This support is currently experimental, and must be \
enabled with the -std=c++11 or -std=gnu++11 compiler options.
#endif

#endif

【问题讨论】:

我知道这听起来很疯狂,但您是否尝试过在命令行中添加 `-std=c++11' 选项? 我在我的答案中添加了一个链接,其中显示了构建选项。看看有没有帮助 Why random header not importing的可能重复 【参考方案1】:

错误说明了一切。尝试将 -std=c++11-std=gnu++11 添加到 NetBeans IDE 中的编译器选项。

我没有使用过 Netbeans,但请参阅 link,其中显示了构建变量的快照,这是您需要添加编译器选项的地方。

【讨论】:

我将 -std=c++1 添加到我的 netbeans 中,但我仍然有问题

以上是关于gcc 4.7 给我错误信息的主要内容,如果未能解决你的问题,请参考以下文章

cc1plus:错误:无法识别的命令行选项'-std = c ++ 11'Ubuntu gcc 4.7

strcpy在centos6.x,gcc4.4.7版本上会有bug,自我移动导致覆盖错误overlap

Grub 不会在 Cygwin 上成功

Centos6.5升级gcc4.4.7升级gcc4.7.0

在centOS7.2上编译gcc4.4.7

如何使用带有行号信息的 gcc 获取 C++ 的堆栈跟踪?