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 runel 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 refreshen 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 ^[[Ao ^[[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-gdbdesde el origen ya que no tengo acceso de root en el servidor remoto.

hdl
fuente