GDB 9 debugger udgivelse

Introduceret debugger udgivelse GDB 9.1 (første udgivelse af 9.x-serien, gren 9.0 blev brugt til udvikling). GDB understøtter fejlfinding på kildeniveau for en lang række programmeringssprog (Ada, C, C++, Objective-C, Pascal, Go osv.) på forskellig hardware (i386, amd64, ARM, Power, Sparc, RISC-V og etc.) og softwareplatforme (GNU/Linux, *BSD, Unix, Windows, macOS).

Nøgle forbedring:

  • Support til Solaris 10 og Cell Broadband Engine-platforme er afbrudt;
  • Tilføjet en ny simulator af PRU (Programmable Real-time Unit) subsystem, der bruges i Texas Instruments processorer (pru-*-elf);
  • Tilføjet en eksperimentel tilstand til hurtig indlæsning af fejlfindingssymboler i multi-threaded-tilstand (aktiveret via indstillingen 'maint set worker-threads unlimited');
  • Det er muligt at bruge symbolet '.' i kommandonavne;
  • Tilføjet muligheden for at indstille brudpunkter på indlejrede funktioner og underrutiner i Fortran;
  • Der er blevet arbejdet på at bringe til en samlet stil og forbedre læsbarheden af ​​kommandoer;
  • Der er implementeret en standardinfrastruktur til at sende kommandoargumenter ved hjælp af bindestreg ('-OPT'), som tillader autofuldførelse ved hjælp af tabulatortasten;
  • Kommandoerne "printf" og "eval" implementerer understøttelse af udlæsning af strenge i C- og Ada-stile uden direkte at kalde en funktion i programmet;
  • Tilføjet støtte til filtrering af outputfiler baseret på et regulært udtryk i kommandoen "info kilder";
  • I indstillingen "sæt udskriftsramme-argumenter" er parameteren "tilstedeværelse" implementeret, når den er indstillet, vises kun tilstedeværelsesindikatoren "..." for argumenter i stedet for at vise navnet og værdien;
  • I grænsefladen TUI kommandoerne "fokus", "vindhøjde", "+", "-", ">", "<" skelner nu mellem store og små bogstaver;
  • For kommandoerne "print", "compile print", "backtrace", "frame"
    anvende", "tfaas" og "faas" muligheder er blevet implementeret for at tilsidesætte globale indstillinger (for eksempel dem, der er indstillet via "set print […]");

  • Muligheden "-q" er blevet tilføjet til kommandoen "info types" for at deaktivere output fra nogle overskrifter;
  • I indstillingerne, i stedet for den "ubegrænsede" værdi, kan du nu angive "u";
  • Nye kommandoer tilføjet:
    • "define-prefix" for at definere dine egne præfikskommandoer;
    • "|" eller "pipe" for at køre en kommando og omdirigere outputtet til en shell-kommando;
    • "med" for at køre den angivne kommando med midlertidigt ændrede indstillinger;
    • "sæt may-call-funktioner" for at kontrollere, om en underrutine kan kaldes fra GDB;
    • "set print finish [on|off]" for at kontrollere visningen af ​​returværdien, når du bruger kommandoen "finish";
    • "indstil print max-depth" for at begrænse output af indlejrede strukturer;
    • "indstil rå-udskriftsværdier [on|off]" for at aktivere/deaktivere formatering af outputværdier;
    • "sæt logning af debugredirect [til|fra]" for at kontrollere lagring af debug-output til en logfil;
    • En række nye "sæt stil"-kommandoer;
    • "indstil udskriftsramme-info […]" for at definere de oplysninger, der skal udskrives, når stak frame-tilstanden vises;
    • "indstil tui compact-source" for at aktivere kompakt tilstand til visning af kode i TUI-grænsefladen (Text User Interface);
    • "info-moduler […]" for at anmode om oplysninger om Fortran-moduler;
    • I stedet for "sæt/vis udskriv rå rammeargumenter" foreslås kommandoen "sæt/vis udskriv rårammeargumenter" (bruger en bindestreg i stedet for et mellemrum som separator);
  • I kontrolsoftwareinterface GDB/MI tilføjet nye kommandoer "-complete", "-catch-throw", "-catch-rethrow", "-catch-catch", "-symbol-info-functions", "-symbol-info-types",
    "-symbol-info-variabler", "-symbol-info-moduler", "-symbol-info-modul-funktioner" og "-symbol-info-modul-variabler" svarer til de samme GDB-kommandoer. Som standard er den tredje version af MI-fortolkeren aktiveret (-i=mi3);

  • Tilføjet nye indbyggede variabler:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Tilføjet "--with-system-gdbinit-dir"-indstillingen til konfigurere build-scriptet for at bestemme stien til gdbinit-systemfilerne;
  • Der er foretaget en række forbedringer til Python API. Tilføjet muligheden for at bygge med Python 3 på Windows;
  • Kravene til montagemiljøet er blevet øget. Opbygning af GDB og GDBserver kræver nu mindst GNU make 3.82. Når du bygger med et eksternt readline-bibliotek, kræves mindst GNU readline 7.0.

Kilde: opennet.ru

Tilføj en kommentar