2011-08-24 15 views
6

En el documentation for gdb:Cómo utilizar el seguimiento en el BGF

instalación El punto de rastreo está actualmente disponible sólo para objetivos a distancia. Ver la sección Especificación de un objetivo de depuración. Además, su objetivo remoto debe saber cómo recopilar datos de rastreo. Esta funcionalidad se implementa en el extremo remoto; sin embargo, ninguno de los stubs distribuidos con puntos de referencia de soporte de GDB a partir de este escrito.

Énfasis mío. ¿Dónde puedo obtener un tal trozo (para código C/C++ compilado con GCC en Debian x86 o x64)? ¿O cómo hago para hacer uno? La documentación en los resguardos de escritura solo menciona la implementación de funciones para comunicarse con los puertos seriales. ¡Gracias!

+0

probablemente debería hacer referencia a la documentación GDB FSF cuando se usa GDB en Linux, (Resulta que esta porción particular no ha cambiado) como las manzanas GDB se bifurcó "En un momento hace mucho tiempo". – matt

+0

Sí, recibí la advertencia de que no estaba soportado por mi 'gdb' y fui a buscar en Google, eso es lo que surgió, pero definitivamente se aplica al' gdb' actual. – Gaius

Respuesta

1

No sé mucho sobre los controles remotos, pero algunos objetivos en gdb ahora son compatibles con los puntos de seguimiento existe una forma de conseguir esto utilizando un comando gdb info o show normal, no pude encontrarlo. en el resultado a continuación, los puntos de seguimiento son compatibles debido a 'supported = 1', , esto no se puede limitar al código auxiliar gdb, sino también al kernel en el que se ejecuta el código auxiliar.

$ gdbserver/gdbserver :12345 ~/tests/test & 
$ gdb -quiet 
(gdb) file ~/tests/test 
Reading symbols from /home/ratmice/tests/test...done. 
(gdb) target remote :12345 
Remote debugging using :12345 
Remote debugging from host 127.0.0.1 
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found)...done. 
Loaded symbols for /lib64/ld-linux-x86-64.so.2 
0x00000035dd600b20 in _start() from /lib64/ld-linux-x86-64.so.2 
Created trace state variable $trace_timestamp for target's variable 1. 
Missing separate debuginfos, use: debuginfo-install glibc-2.13-2.x86_64 
(gdb) interpreter-exec mi2 -trace-status 
^done,supported="1",running="0",frames="0",frames-created="0",buffer-size="5242880",buffer-free="5242880",disconnected="0",circular="0" 
+0

¿Qué versión es esta? Tengo 'gdb' 7.0.1-debian y' gcc' versión 4.4.5 en kernel 2.6.32-5. 'tstart' me da' Target no admite este comando' ejecutándose según su ejemplo allí con 'gdbserver'. 'interpreter-exec mi2 -trace-status' me da'^error, msg = "Comando MI no definido: estado de rastreo" '. ¡Gracias! – Gaius

+1

el comando -trace-status mi se agregó en 7.2. – matt

Cuestiones relacionadas