Después de actualizar a Mojave 10.14.4 y Xcode 10.2, no consigo compilar GCC 8.3.0. El mensaje de error es
In file included from /usr/include/sys/sysctl.h:83,
from ../../gcc-8.3.0/gcc/config/darwin-driver.c:30:
/usr/include/sys/ucred.h:94:2: error: ‘_Atomic’ does not name a type
_Atomic u_long cr_ref; /* reference count */
^~~~~~~
No he encontrado ninguna pista de cómo se puede arreglar esto. La cabecera en cuestión es
struct ucred {
LIST_ENTRY(ucred) cr_link; /* never modify this without KAUTH_CRED_HASH_LOCK */
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L && !defined(__STDC_NO_ATOMICS__)
_Atomic u_long cr_ref; /* reference count */
#elif defined(__cplusplus) && __cplusplus >= 201103L
_Atomic u_long cr_ref; /* reference count */ // <--- this line
#else
volatile u_long cr_ref; /* reference count */
#endif
Cualquier idea será muy apreciada.
0 votos
Estaba escribiendo una respuesta para usted cuando esto quedó en suspenso: "Necesitas usar un compilador compatible con C11 para tener soporte para la palabra clave _Atomic. Asegúrese de que está compilando con un compilador reciente y moderno, y que STDC_NO_ATOMICS no está definido. "
1 votos
@nohillside Esta no es una pregunta de desarrollo de software. Se trata de un usuario que intenta instalar GCC 8.3.0 compilando el software - no un usuario que intenta desarrollar un nuevo software.
0 votos
Cómo está compilando gcc. La forma más fácil es usar macports o homebrew. Si no quiere hacer eso, al menos vea cómo han conseguido que la compilación funcione.
0 votos
@jksoegaard Gracias, por favor publique su respuesta
0 votos
Tengo un problema similar. No puedo compilar un programa usando el GNU G++ 7 de MacPorts, cuando incluye el tbb/parallel_sort.h. Imprime exactamente el mismo mensaje de error, pero mi rastro va a Xcode /usr/include/sys/sysctl.h.