Estoy tratando de comstackr usando g++
y los -std=c++11
o c++0x
.
Sin embargo, recibo este error
cc1plus: error: unrecognized command line option "-std=c++11"
g ++ –versión
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.
Viendo desde su versión de G ++, necesita actualizarlo mal. C ++ 11 solo ha estado disponible desde G ++ 4.3. La versión más reciente es 4.7.
En versiones anteriores a G ++ 4.7, deberá usar -std=c++0x
, para versiones más recientes puede usar -std=c++11
.
Citando del sitio web de gcc :
Las características C ++ 11 están disponibles como parte del comstackdor GCC “mainline” en el tronco del repository Subversion de GCC y en GCC 4.3 y posterior. Para habilitar la compatibilidad con C ++ 0x, agregue el parámetro de línea de comandos -std = c ++ 0x a su línea de comandos de g ++. O bien, para habilitar las extensiones de GNU además de las extensiones de C ++ 0x, agregue -std = gnu ++ 0x a su línea de comandos de g ++. GCC 4.7 y posterior admiten -std = c ++ 11 y -std = gnu ++ 11 también.
Probablemente use una versión de g ++ que no admita -std=c++11
. Pruebe -std=c++0x
lugar.
La disponibilidad de las características de C ++ 11 es solo para versiones> = 4.3.
deberías probar esto
g++-4.4 -std=c++0x or g++-4.7 -std=c++0x
También recibí el mismo error, la comstackción con -D flag lo corrigió, prueba esto:
g ++ -Dstd = c ++ 11