Red de conocimiento informático - Conocimiento del nombre de dominio - Descubra la versión de gcc que admite c11

Descubra la versión de gcc que admite c11

Antecedentes

Tossup:

Error no resuelto al compilar crosstool-ng en cygwin en la biblioteca del edificio C: ./wcsmbs/uchar.h:47:5: error: #error"lt;uchar .hgt;Requiere el modo ISO C11"

Durante este período, me di cuenta de que además de c89, c90 y c99, también hay un c11.

Entonces, para tu información:

Compile e instale glibc

Luego me di cuenta de que las versiones inferiores de gcc no son compatibles con c11.

(Y mi eglibc 2.17 y el glibc-2.16.0 del chico necesitan gcc para admitir c11)

Entonces, quiero saber qué versión de gcc admite aquí c11.

Proceso de solución

1. Búsqueda en Google:

gcc c11

Puedes ver:

2 Idioma estándares soportados por GCC

Y comprenda:

C89=C90: las opciones de gcc son:

-ansi, -std=c90 o -std=c90 o - std=c90.std=c90 o -std=iso9899:1990;

Con extensiones GNU: -std=gnu90

C94=C95: opción gcc: -std=iso9899:199409.

C99: opciones de gcc: -std=c99 o -std= iso9899:1999

Antes de completarse el estándar C99, se llamaba C9X

con GNU Extensiones: -std=gnu99

C11: La opción gcc es -std=c11 o -std=iso9899:2011

Antes de que se completara el estándar C11, se llamaba C1X

Usar extensión GNU: -std=gnu11

2. Más tarde encontrado:

¿Cómo habilitar C11 en una versión superior de gcc?

Puedes ver:

gcc 4.7 y versiones posteriores son compatibles con C11

.

Materiales de referencia:

> C11Status

Conocido:

-std=c1x GCC 4.6

-std=c11 GCC 4.7

Problema de biblioteca uchar.h ( glibc 2.16)

Resumen

gcc realmente no admitió c11 hasta 4.7.