cc1plus:错误:无法识别的命令行选项“-std=c++11"与 g++

2022-01-23 00:00:00 compiler-errors g++ c++ c++11 std

我正在尝试使用 g++-std=c++11c++0x 标志进行编译.

I'm trying to compile using g++ and either the -std=c++11 or c++0x flags.

但是,我得到了这个错误

However, I get this error

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

g++ --version

g++ (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

推荐答案

从你的G++版本来看,你需要更新的很厉害.C++11 仅在 G++ 4.3 之后才可用.最新版本是 4.7.

Seeing from your G++ version, you need to update it badly. C++11 has only been available since G++ 4.3. The most recent version is 4.7.

在 G++ 4.7 之前的版本中,您必须使用 -std=c++0x,对于更新的版本,您可以使用 -std=c++11.

In versions pre-G++ 4.7, you'll have to use -std=c++0x, for more recent versions you can use -std=c++11.

相关文章