Esta es una pregunta de segunda mano de un sitio de desarrollo de sistema operativo, pero me dio curiosidad ya que no pude encontrar una explicación decente en ninguna parte.¿Para qué es __gxx_personality_v0?
Al compilar y vincular un programa independiente C++ utilizando gcc, a veces un error enlazador como se produce esto:
out/kernel.o:(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
Esto es aparentemente debido a este símbolo se define en libstdC++, que está ausente en un free- entorno de pie Solucionar el problema simplemente requiere definir este símbolo en alguna parte:
void *__gxx_personality_v0;
lo cual es bueno, pero no me gustan las cosas que simplemente funcionan mágicamente ... Así que la pregunta es, ¿cuál es el propósito de este símbolo?
Gracias por el consejo sobre '-fno-excepciones'. Agregué 'CPPFLAGS + = -fno-exceptions' a mi archivo MAKE, y eso resolvió el error. –