Rilascio del debugger GDB 8.3

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

Chiave miglioramenti:

  • Nelle interfacce CLI e TUI è stata implementata la possibilità di definire lo stile del terminale (è stato aggiunto il comando «set style»). Con GNU Highlight è possibile evidenziare i codici sorgente;
  • È stato implementato il supporto sperimentale per la compilazione e l'inserimento di codice sorgente in C++ in un processo controllato tramite GDB
    (inferiore). Per funzionare, è necessaria almeno la versione 7.1 di GCC, compilata con libcp1.so;
  • In GDB e GDBserver è stato aggiunto il supporto per IPv6. Gli indirizzi IPv6 devono essere specificati nel formato «[ADDRESS]:PORT»;
  • Per i sistemi target RISC-V è stato aggiunto il supporto per la descrizione dell'obiettivo nel formato XML (Formato Descrizione Obiettivo);
  • Sulla piattaforma FreeBSD è stato garantito il supporto per l'impostazione di punti di interruzione
    (catchpoint) sulle chiamate di sistema, utilizzando i loro alias, specifici per diverse ABI (ad esempio, per ‘kevent’ è disponibile l'alias ‘freebsd11_kevent’ per agganciarsi al vecchio ABI);
  • Nel comando «target remote» è stato aggiunto il supporto per i socket Unix (Unix Domain socket);
  • È stata aggiunta la possibilità di visualizzare tutti i file aperti da un processo (comando «info proc files»);
  • È stata implementata la possibilità di salvare automaticamente su disco gli indici dei simboli DWARF per accelerare il caricamento successivo dello stesso file eseguibile;
  • In GDBserver per la piattaforma PowerPC GNU/Linux è stato aggiunto il supporto per l'accesso ai registri PPR, DSCR, TAR, EBB/PMU e HTM;
  • Aggiunti nuovi comandi «set/show debug compile-cplus-types» e
    «set/show debug skip» per configurare l'output dei dati sulle trasformazioni dei tipi C++ e le informazioni sui file e le funzioni ignorati;
  • Aggiunti i comandi «frame apply COMMAND», «taas COMMAND», «faas COMMAND», «tfaas COMMAND» per applicare comandi ai frame dello stack e ai thread;
  • Miglioramenti ai comandi «frame», «select-frame», «info frame»,
    — «info functions», «info types», «info variables», «info thread», «info proc»;
  • Quando viene eseguito in modalità batch, GDB ora restituisce il codice di errore 1 in caso di errore nell'esecuzione dell'ultimo comando;
  • È stata aggiunta la possibilità di compilare GDB con un rilevatore di comportamento indefinito (Undefined Behavior Sanitizer) fornito da GCC;
  • Aggiunte configurazioni di sistema di base (native configuration, per il debug sulla stessa macchina) per le piattaforme RISC-V GNU/Linux (riscv*-*-linux*) e RISC-V FreeBSD (riscv*-*-freebsd*);
  • Aggiunte configurazioni target (target configuration): 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 sulla stessa macchina in Windows ora richiede almeno Windows XP o versioni più recenti;
  • Per utilizzare l'API Python è ora richiesta almeno la versione 2.6 di Python.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster