Rilascio del debugger GDB 8.3

Introdotto rilascio del debugger GDB 8.3, che supporta il debug a livello sorgente per un'ampia gamma di linguaggi di programmazione (Ada, C, C++, Objective-C, Pascal, Go, ecc.) su vari hardware (i386, amd64, ARM, Power, Sparc, RISC-V ed ecc.) e piattaforme software (GNU/Linux, *BSD, Unix, Windows, macOS).

Chiave miglioramenti:

  • Le interfacce CLI e TUI ora hanno la capacità di definire lo stile del terminale (è stato aggiunto il comando “set style”). Con GNU Highlight viene implementata l'evidenziazione del testo sorgente;
  • Implementato il supporto sperimentale per la compilazione e la sostituzione del codice sorgente C++ in un processo controllato da GDB
    (inferiore). Per funzionare è necessaria almeno una versione di GCC 7.1b compilata con libcp1.so;

  • Il supporto IPv6 è stato aggiunto a GDB e GDBserver. Per impostare gli indirizzi IPv6, utilizzare il formato “[ADDRESS]:PORT”;
  • Per i sistemi di destinazione RISC-V è stato aggiunto il supporto per la descrizione della destinazione in formato XML (Formato della descrizione della destinazione);
  • La piattaforma FreeBSD fornisce supporto per l'installazione di punti di intercettazione
    (catchpoint) alle chiamate di sistema che utilizzano i loro alias specifici per diverse ABI (ad esempio, per 'kevent' è disponibile un alias 'freebsd11_kevent' da associare alla vecchia ABI);

  • Al comando “target remote” è stato aggiunto il supporto per i socket Unix (Unix Domain socket);
  • Aggiunta la possibilità di visualizzare tutti i file aperti da un processo (comando “info proc files”);
  • Implementata la possibilità di salvare automaticamente su disco gli indici dei simboli DWARF per velocizzare il successivo caricamento dello stesso file eseguibile;
  • Aggiunto supporto per l'accesso ai registri PPR, DSCR, TAR, EBB/PMU e HTM a GDBserver per la piattaforma PowerPC GNU/Linux;
  • Aggiunti nuovi comandi "imposta/mostra debug compile-cplus-types" e
    "imposta/mostra debug skip" per configurare l'output dei dati sulle conversioni di tipo C++ e le informazioni su file e funzioni saltati;

  • Aggiunti i comandi "frame apply COMMAND", "taas COMMAND", "faas COMMAND", "tfaas COMMAND" per applicare comandi allo stack di frame e thread;
  • Sono stati apportati miglioramenti ai comandi “frame”, “select-frame”, “info frame”,
    — “funzioni info”, “tipi info”, “variabili info”, “thread info”, “proc info”;

  • Quando eseguito in modalità batch, GDB ora restituisce il codice di errore 1 se l'ultimo comando fallisce;
  • Aggiunta la possibilità di creare GDB con UnDefinited Behavior Sanitizer fornito da GCC;
  • Aggiunte impostazioni di sistema di base (configurazione nativa, per il debug sullo stesso sistema) per le piattaforme RISC-V GNU/Linux (riscv*-*-linux*) e RISC-V FreeBSD (riscv*-*-freebsd*);
  • Aggiunte configurazioni di destinazione: 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*);
  • Il debug sullo stesso sistema su Windows ora richiede Windows XP o edizioni più recenti;
  • Per utilizzare l'API Python è ora necessario Python 2.6 o versione successiva.

Fonte: opennet.ru

Aggiungi un commento