Existe alguma versão interativa ou mais amigável (ou substituição) do GDB para depuração?
Algumas pessoas sugeriram o CGDB, mas depois de alguns testes, achei o buggy e instável.
Há uma lista de front-ends do gdb em http://sourceware.org/gdb/wiki/GDB%20Front%20Ends
Infelizmente, isso fornece apenas outros links, mas não há dicas sobre o escopo e a usabilidade que variam muito lá. Eu recomendo usar um frontend que esteja em desenvolvimento ativo, já que o próprio gdb muda muito.
Painel GDB
https://github.com/cyrus-and/gdb-dashboard
O painel do GDB usa a API oficial do GDB Python e imprime as informações que você deseja quando o GDB para, por exemplo, após a next
, como o display
comando nativo .
Vs TUI:
mais robusto, pois apenas imprime em stdout em vez de colocar o shell em um estado de maldições mais mágicas, por exemplo:
vi
modo .inputrc
causa problemas: /superuser/180512/how-to-turn-off-gdb-tui/927728#927728altamente configurável a partir do Python: você pode selecionar o que deseja gerar e o tamanho de cada seção, dependendo do que você está depurando.
As visualizações mais úteis já estão implementadas: origem, montagem, registradores, pilha, memória, threads, expressões ... mas deve ser fácil estendê-lo com qualquer informação exposta na API do GDB Python.
A TUI só permite mostrar duas fontes, montagens e registros, e é isso. A menos que você queira modificar o código fonte C, é claro ;-)
Acredito que o GDB deve ser enviado com uma configuração como essa imediatamente e ativado por padrão, atrairia muito mais usuários dessa maneira.
Ah, e a principal desenvolvedora, Andrea Cardaci , tem sido muito receptiva e incrível. Muitos elogios.
Consulte também: /programming/209534/how-to-highlight-and-color-gdb-output-during-interactive-debugging/17341335#17341335