tutorial test subaru que online debuggear como c gdb

test - gdb: "No se carga ninguna tabla de símbolos"



gdb tutorial (4)

Sigo recibiendo este mensaje de error cuando intento agregar un punto de interrupción en gdb.

He usado estos comandos para compilar:

gcc -g main.c utmpib2.c -o main.o and: cc -g main.c utmpib2.c -o main.o and also: g++ -g main.c utmpib2.c -o main.o

También probé "-ggdb" en lugar de "-g" y sigo recibiendo ese mensaje de error.

Luego ejecuto gdb:

$gdb

En gdb:

(gdb)exec-file main.o (gdb)break 59 No symbol table is loaded. Use the "file" command.


Debe agregar el parámetro extra -g, que genera información de depuración a nivel de fuente. Se verá así:

gcc -g prog.c

Después de eso puedes usar gdb de manera común.


En primer lugar, lo que tienes es un programa completamente compilado, no un archivo objeto, así que descarta la extensión .o . Ahora, preste atención a lo que dice el mensaje de error, le dice exactamente cómo solucionar su problema: "No se carga ninguna tabla de símbolos. Use el comando" archivo " .

(gdb) exec-file test (gdb) b 2 No symbol table is loaded. Use the "file" command. (gdb) file test Reading symbols from /home/user/test/test...done. (gdb) b 2 Breakpoint 1 at 0x80483ea: file test.c, line 2. (gdb)

O simplemente pase el programa en la línea de comando.

$ gdb test GNU gdb (GDB) 7.4 Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> [...] Reading symbols from /home/user/test/test...done. (gdb) b 2 Breakpoint 1 at 0x80483ea: file test.c, line 2. (gdb)


Siempre que gcc en la máquina de compilación y gdb en la máquina de prueba tengan diferentes versiones , es posible que se encuentre con una incompatibilidad de formato de debuginfo .

Para solucionarlo, intente degradar el formato de debuginfo:

gcc -gdwarf-3 ... gcc -gdwarf-2 ... gcc -gstabs ... gcc -gstabs+ ... gcc -gcoff ... gcc -gxcoff ... gcc -gxcoff+ ...

O gdb coincidir gdb con el gcc que está usando.


Tengo el mismo problema y seguí este Post , resolvió mi problema.

Siga los siguientes 2 pasos:

  1. Asegúrese de que el nivel de optimización sea -O0
  2. Agrega el indicador -ggdb al compilar tu programa

¡Buena suerte!