Estoy usando GDB 7.6 en un servidor remoto.
Cuando comienzo gdb
, todo está bien, siempre que el programa para depurar no se ejecute. Puedo usar las flechas hacia arriba y hacia abajo para navegar por el historial de GDB, etc. No hay errores de visualización para informar.
Cuando creo un punto de interrupción en algún lugar de mi programa y luego run
el programa para depurar, la pantalla tiene muchos artefactos (caracteres que se muestran en el lugar equivocado) hasta que corro refresh
. A partir de entonces, next
, stepi
, nexti
, flechas arriba y abajo, etc. trabajo , pero la pantalla sigue atrayendo a los personajes en lugares equivocados. Si no ejecuto refresh
en cada paso, la pantalla no es lo que debería ser. Además, cuando presiono la tecla de flecha hacia arriba o hacia abajo, se muestran los códigos de barras sin procesar ^[[A
o ^[[B
, sin permitir saber qué comando de historial se ejecutará.
Traté de definir ganchos como
define hook-nexti
refresh
end
Esto realmente actualiza la pantalla, pero a veces puede haber artefactos no deseados (especialmente en la línea resaltada del código ejecutado) y no es una solución aceptable, ya que no necesito ganchos en mi máquina local (GDB 7.11, zsh 5.0.2) .
También tengo un GDB 7.7 en mi máquina, con el que se puede reproducir el problema. ¿Es este un error que se ha solucionado entre GDB 7.7 y GDB 7.11? En caso afirmativo, solo compilaré binutils-gdb
desde el origen ya que no tengo acceso de root en el servidor remoto.