【发布时间】:2014-03-01 20:58:14
【问题描述】:
在网上看了很多文献后,似乎最近的GCC版本肯定支持-std=c++11命令行选项。但出于某种疯狂的原因,即使使用 GCC 4.8.1,我也会得到“无法识别的命令行选项”,这没有任何意义。
C:\newmingw\mingw32\bin>g++ -v
Using built-in specs.
COLLECT_GCC=g++
Target: i686-w64-mingw32
Configured with: [trimmed]
Thread model: win32
gcc version 4.8.1 (rev5, Built by MinGW-W64 project)
C:\newmingw\mingw32\bin>g++ -std=c++11 test.cpp
cc1plus: error: unrecognized command line option "-std=c++11"
这里还有什么需要做的吗?蒂亚!
【问题讨论】:
-
您可以尝试编译一些不带标志的 C++ 11 代码。至少有一些 MinGW 构建默认启用了
std=c++11标志,所以你不必明确地这样做。 -
您是否在旧版本上解压了新版本?核对整个东西并新鲜打开包装,应该没问题。如果没有,请报告错误,因为他们打包了错误的 cc1plus 或其他东西。
-
考虑购买新发行版?也许是 mingw-builds 的一个。
-
嗯,这是一个微不足道的建议,但文档对这个选项有什么看法?
-std=c++0x呢? -
我在 windows 和 c++11 上遇到了 mingw 的奇怪问题,只是说。我很快逃回了 linux,我可以愉快地从那里交叉编译。