Lançamento do depurador GDB 8.3

Introduzido versão do depurador GDB 8.3, suportando depuração em nível de fonte para uma ampla variedade de linguagens de programação (Ada, C, C++, Objective-C, Pascal, Go, etc.) em vários hardwares (i386, amd64, ARM, Power, Sparc, RISC-V e etc.) e plataformas de software (GNU/Linux, *BSD, Unix, Windows, macOS).

Chave melhorias:

  • As interfaces CLI e TUI agora têm a capacidade de definir o estilo do terminal (o comando “set style” foi adicionado). Com o GNU Highlight, o destaque do texto fonte é implementado;
  • Implementado suporte experimental para compilar e substituir código-fonte C++ em um processo controlado por GDB
    (inferior). Para funcionar, você precisa de pelo menos uma versão do GCC 7.1b compilada com libcp1.so;

  • O suporte IPv6 foi adicionado ao GDB e GDBserver. Para definir endereços IPv6, use o formato “[ENDEREÇO]:PORTA”;
  • Para sistemas de destino RISC-V, foi adicionado suporte para descrever o destino em formato XML (Formato de descrição de destino);
  • A plataforma FreeBSD fornece suporte para instalação de pontos de interceptação
    (ponto de captura) para chamadas de sistema usando seus aliases específicos para diferentes ABIs (por exemplo, para 'kevent' o alias 'freebsd11_kevent' está disponível para ligação à ABI antiga);

  • Suporte para soquetes Unix (soquete de domínio Unix) foi adicionado ao comando “target remoto”;
  • Adicionada a capacidade de exibir todos os arquivos abertos por um processo (comando “info proc files”);
  • Implementada a capacidade de salvar automaticamente índices de símbolos DWARF em disco para acelerar o carregamento subsequente do mesmo arquivo executável;
  • Adicionado suporte para acesso aos registros PPR, DSCR, TAR, EBB/PMU e HTM ao GDBserver para a plataforma PowerPC GNU/Linux;
  • Adicionados novos comandos "set/show debug compile-cplus-types" e
    “set/show debug skip” para configurar a saída de dados sobre conversões de tipo C++ e informações sobre arquivos e funções ignorados;

  • Adicionados comandos "frame apply COMMAND", "taas COMMAND", "faas COMMAND", "tfaas COMMAND" para aplicar comandos para empilhar frames e threads;
  • Foram feitas melhorias nos comandos “frame”, “select-frame”, “info frame”,
    — “funções de informação”, “tipos de informação”, “variáveis ​​de informação”, “thread de informação”, “proc de informação”;

  • Quando executado em modo batch, o GDB agora retorna o código de erro 1 se o último comando falhar;
  • Adicionada a capacidade de construir GDB com o Undefined Behavior Sanitizer fornecido pelo GCC;
  • Adicionadas configurações básicas do sistema (configuração nativa, para depuração no mesmo sistema) para as plataformas RISC-V GNU/Linux (riscv*-*-linux*) e RISC-V FreeBSD (riscv*-*-freebsd*);
  • Configurações de destino adicionadas: CSKY ELF (csky*-*-elf), CSKY GNU/Linux (csky*-*-linux), NXP S12Z ELF (s12z-*-elf), OpenRISC GNU/Linux (or1k *-*-linux *), RISC-V GNU/Linux (riscv*-*-linux*) e RISC-V FreeBSD (riscv*-*-freebsd*);
  • A depuração no mesmo sistema no Windows agora requer o Windows XP ou edições mais recentes;
  • Agora é necessário Python 2.6 ou posterior para usar a API Python.

Fonte: opennet.ru

Adicionar um comentário