GDB 9 debugger utgivelse

Introdusert utgivelse av debugger GDB 9.1 (første utgivelse av 9.x-serien, gren 9.0 ble brukt til utvikling). GDB støtter feilsøking på kildenivå for et bredt spekter av programmeringsspråk (Ada, C, C++, Objective-C, Pascal, Go, etc.) på forskjellig maskinvare (i386, amd64, ARM, Power, Sparc, RISC-V og etc.) og programvareplattformer (GNU/Linux, *BSD, Unix, Windows, macOS).

Nøkkel forbedringer:

  • Støtte for Solaris 10 og Cell Broadband Engine-plattformer er avviklet;
  • Lagt til en ny simulator av PRU (Programmable Real-time Unit) subsystem brukt i Texas Instruments prosessorer (pru-*-elf);
  • Lagt til en eksperimentell modus for rask lasting av feilsøkingssymboler i multi-threaded-modus (aktivert via 'maint set worker-threads unlimited'-innstillingen);
  • Det er mulig å bruke symbolet '.' i kommandonavn;
  • Lagt til muligheten til å sette bruddpunkter på nestede funksjoner og subrutiner i Fortran;
  • Arbeid har blitt utført for å bringe til en enhetlig stil og forbedre lesbarheten til kommandoer;
  • En standard infrastruktur er implementert for å sende kommandoargumenter ved å bruke bindestrek-tegnet ('-OPT'), som tillater autofullføring ved å bruke tabulatortasten;
  • Kommandoene "printf" og "eval" implementerer støtte for å skrive ut strenger i C- og Ada-stiler uten å kalle en funksjon i programmet direkte;
  • Lagt til støtte for filtrering av utdatafiler basert på et regulært uttrykk i "info sources"-kommandoen;
  • I "sett utskriftsramme-argumenter"-innstillingen er "tilstedeværelse"-parameteren implementert, når den er satt, vises bare tilstedeværelsesindikatoren "..." for argumenter i stedet for å vise navnet og verdien;
  • I grensesnittet TUI kommandoene "fokus", "vinhøyde", "+", "-", ">", "<" skiller nå mellom store og små bokstaver;
  • For kommandoene "print", "compile print", "backtrace", "frame"
    «apply», «tfaas» og «faas»-alternativer er implementert for å overstyre globale innstillinger (for eksempel de som er satt via «set print […]»);

  • Alternativet "-q" har blitt lagt til "info types"-kommandoen for å deaktivere utdata fra enkelte overskrifter;
  • I innstillingene, i stedet for den "ubegrensede" verdien, kan du nå spesifisere "u";
  • Nye kommandoer lagt til:
    • "define-prefix" for å definere dine egne prefikskommandoer;
    • "|" eller "pipe" for å kjøre en kommando og omdirigere utdataene til en shell-kommando;
    • "med" for å kjøre den angitte kommandoen med midlertidig endrede innstillinger;
    • "sett may-call-funksjoner" for å kontrollere om en subrutine kan kalles fra GDB;
    • "sett utskriftsavslutning [på|av]" for å kontrollere visningen av returverdien når du bruker "finish"-kommandoen;
    • "sett utskrifts maks-dybde" for å begrense produksjonen av nestede strukturer;
    • "sett utskriftsråverdier [på|av]" for å aktivere/deaktivere formatering av utdataverdier;
    • "sett logging debugredirect [på|av]" for å kontrollere lagring av feilsøkingsutdata til en loggfil;
    • En serie nye "sett stil"-kommandoer;
    • "sett print frame-info […]" for å definere informasjonen som skal skrives ut når stabelframe-tilstanden vises;
    • "sett tui compact-source" for å aktivere kompakt modus for visning av kode i TUI-grensesnittet (Text User Interface);
    • "info moduler […]" for å be om informasjon om Fortran-moduler;
    • I stedet for "sett/vis skriv ut råramme-argumenter", foreslås kommandoen "sett/vis skriv ut råramme-argumenter" (bruker en bindestrek i stedet for et mellomrom som skilletegn);
  • I kontrollprogramvaregrensesnitt GDB/MI lagt til nye kommandoer "-complete", "-catch-throw", "-catch-rethrow", "-catch-catch", "-symbol-info-functions", "-symbol-info-types",
    "-symbol-info-variabler", "-symbol-info-modules", "-symbol-info-module-functions" og "-symbol-info-module-variables" tilsvarer de samme GDB-kommandoene. Som standard er den tredje versjonen av MI-tolken aktivert (-i=mi3);

  • Lagt til nye innebygde variabler:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Lagt til "--with-system-gdbinit-dir"-alternativet til konfigurere byggeskriptet for å bestemme banen til gdbinit-systemfilene;
  • En rekke forbedringer er gjort i Python API. Lagt til muligheten til å bygge med Python 3 på Windows;
  • Kravene til monteringsmiljøet er økt. Å bygge GDB og GDBserver krever nå minst GNU make 3.82. Når du bygger med et eksternt readline-bibliotek, kreves minst GNU readline 7.0.

Kilde: opennet.ru

Legg til en kommentar