Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

240
Vistas
versiones de encabezado c ++ no coincidentes

Acabo de instalar g ++ 4.8 en mi sistema ubuntu para cumplir con algunos requisitos previos. Pero ahora veo algunos errores de compilación de C++ como este:

comando de compilación:
g++-4.8 -m64 -std=c++0x -c -g -I/usr/include/jsoncpp/json -std=c++0x -MMD -MP -MF build/Debug/GNU-Linux-x86/_ext /803384703/CharNode.od -o build/Debug/GNU-Linux-x86/_ext/803384703/CharNode.o ../doublets/CharNode.cpp

Error:

 In file included from /usr/include/x86_64-linux-gnu/c++/4.8/bits/c++config.h:420:0, from /usr/include/c++/4.8/bits/stl_algobase.h:59, from /usr/include/c++/4.8/bits/stl_tree.h:61, from /usr/include/c++/4.8/map:60, from ../doublets/CharNode.h:13, from ../doublets/CharNode.cpp:9: /usr/include/x86_64-linux-gnu/c++/4.8/bits/os_defines.h:44:19: error: missing binary operator before token "(" #if __GLIBC_PREREQ(2,15) && defined(_GNU_SOURCE) ^

¿Parece estar quejándose del paréntesis?

Además, (en otros errores) creo que hay una discrepancia de versión entre wchar.h (c99) y todo lo demás que es c++0x (C11). ¿Alguna idea de cómo obtener los encabezados estándar c11 e instalarlos en ubuntu?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Reparado.

El problema estaba en el comando de compilación:

 g++-4.8 -m64 -std=c++0x -c -g -I/usr/include/jsoncpp/json -std=c++0x -MMD -MP -MF build/Debug/GNU-Linux-x86/_ext/803384703/CharNode.od -o build/Debug/GNU-Linux-x86/_ext/803384703/CharNode.o ../doublets/CharNode.cpp

El comando -I incluye directorios para buscar al ubicar archivos de encabezado. Tanto os_defines.h como mis propios archivos incluyen referencias a diferentes archivos de encabezado con el mismo nombre: features.h . Creo que hay uno estándar y hay uno en la biblioteca jsoncpp que estaba usando.

El problema fue que el comando -I anterior fue un directorio demasiado lejos y no debería haber tenido /json al final. Las bibliotecas estándar se refieren a este archivo como Features.h, e internamente features.h hace lo mismo features.h su propio archivo Features.h.

Si hubiera mirado los miles de errores generados, habría visto que mis propias referencias a los archivos de encabezado de las bibliotecas jsoncpp estaban dando como resultado un error de "archivo de encabezado no encontrado", pero no llegué tan lejos.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda