Estou usando o GDB 7.6 em um servidor remoto.
Quando eu inicio gdb
está tudo bem, desde que o programa a ser depurado não seja executado. Posso usar as setas para cima e para baixo para navegar pelo histórico do GDB, etc. Nenhum bug de exibição para relatar.
Quando eu crio um ponto de interrupção em algum lugar do meu programa e depois run
o programa para depurar, a exibição possui muitos artefatos (caracteres exibidos no lugar errado) até que eu execute o refresh
. A partir de então, next
, stepi
, nexti
, setas para cima e para baixo, etc.masa tela continua a desenhar caracteres em lugares errados. Se eu não executar refresh
cada etapa, a exibição não será o que deveria ser. Além disso, quando pressiono a tecla de seta para cima ou para baixo, os caracteres brutos ^[[A
ou ^[[B
são exibidos, não permitindo saber qual comando do histórico será executado.
Eu tentei definir ganchos como
define hook-nexti
refresh
end
Na verdade, isso atualiza a tela, mas às vezes ainda pode haver artefatos indesejados (especialmente na linha destacada do código executado) e não é uma solução aceitável, pois não preciso de ganchos em minha máquina local (GDB 7.11, zsh 5.0.2) .
Acontece que também tenho um GDB 7.7 na minha máquina, com o qual o problema pode ser reproduzido. Este é um bug que foi corrigido entre o GDB 7.7 e o GDB 7.11? Se sim, compilarei binutils-gdb
a partir do código-fonte, pois não tenho acesso root no servidor remoto.