He estado recibiendo esta undefined symbol edificio con esta línea de comandos:
$ gcc test.cpp
Undefined symbols:
"___gxx_personality_v0", referenced from:
etc...
test.cpp es simple y debe construir bien. ¿Cuál es el trato?
He estado recibiendo esta undefined symbol edificio con esta línea de comandos:
$ gcc test.cpp
Undefined symbols:
"___gxx_personality_v0", referenced from:
etc...
test.cpp es simple y debe construir bien. ¿Cuál es el trato?
Uso
g++ test.cpp
en su lugar, ya que este es el código de c++.
O, si usted realmente desea utilizar gcc
, agregar -lstdc++
a la línea de comandos, así:
gcc test.cpp -lstdc++
Ejecución md5
contra la a.out
producido en cada escenario muestra que es la misma salida.
Pero, sí, g++
probablemente hace que su mundo de una forma más simple lugar.
la extensión .cpp causa de gcc para compilar el archivo como un archivo de c++.
Según esta página de la extensión importa: http://gcc.gnu.org/onlinedocs/gcc-4.4.1/gcc/Overall-Options.html#index-file-name-suffix-71
Tratar de compilar el mismo archivo pero con el .c
de extensión (o, alternativamente, especificar explícitamente el lenguaje con -x c
). Si ejecuta nm test.o
(donde la prueba.o es el archivo de objeto resultante de la ejecución gcc -x c -c test.cpp -o test.o
) se dará cuenta de que ___gxx_personality_v0
no aparece como un símbolo, mientras que si se ejecuta el mismo comando en un archivo de objeto generado con gcc -c test.cpp -o test.o
el ___gxx_personality_v0
está presente.
© 2017 Zigzag Horizontal SL
Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.