GDB 9 debugger release

Introducerad debugger release GDB 9.1 (första utgåvan av 9.x-serien, gren 9.0 användes för utveckling). GDB stöder felsökning på källnivå för ett brett utbud av programmeringsspråk (Ada, C, C++, Objective-C, Pascal, Go, etc.) på olika hårdvara (i386, amd64, ARM, Power, Sparc, RISC-V och etc.) och mjukvaruplattformar (GNU/Linux, *BSD, Unix, Windows, macOS).

Nyckel förbättringar:

  • Stödet för Solaris 10 och Cell Broadband Engine-plattformarna har upphört;
  • Lade till en ny simulator av PRU (Programmable Real-time Unit) subsystem som används i Texas Instruments processorer (pru-*-elf);
  • Lade till ett experimentellt läge för snabb laddning av felsökningssymboler i flertrådsläge (aktiverat via inställningen 'Maint set worker-threads unlimited');
  • Det är möjligt att använda symbolen '.' i kommandonamn;
  • Lade till möjligheten att ställa in brytpunkter på kapslade funktioner och subrutiner i Fortran;
  • Arbete har utförts för att skapa en enhetlig stil och förbättra läsbarheten för kommandon;
  • En standardinfrastruktur har implementerats för att skicka kommandoargument med hjälp av bindestrecket ('-OPT'), som tillåter autokomplettering med tabbtangenten;
  • Kommandona "printf" och "eval" implementerar stöd för utmatning av strängar i C- och Ada-stilar utan att direkt anropa en funktion i programmet;
  • Lade till stöd för filtrering av utdatafiler baserat på ett reguljärt uttryck i kommandot "info sources";
  • I inställningen "set print frame-arguments" implementeras parametern "närvaro", när den är inställd visas endast närvaroindikatorn "..." för argument istället för att visa namn och värde;
  • I gränssnittet TUI kommandona "focus", "winheight", "+", "-", ">", "<" är nu skiftlägeskänsliga;
  • För kommandona "print", "compile print", "backtrace", "frame"
    tillämpas, "tfaas" och "faas"-alternativen har implementerats för att åsidosätta globala inställningar (till exempel de som ställts in via "set print […]");

  • Alternativet "-q" har lagts till i kommandot "info types" för att inaktivera utmatningen av vissa rubriker;
  • I inställningarna, istället för det "obegränsade" värdet, kan du nu ange "u";
  • Nya kommandon tillagda:
    • "definiera-prefix" för att definiera dina egna prefixkommandon;
    • "|" eller "pipa" för att köra ett kommando och omdirigera utdata till ett skalkommando;
    • "med" för att köra det angivna kommandot med tillfälligt ändrade inställningar;
    • "set may-call-funktioner" för att kontrollera om en subrutin kan anropas från GDB;
    • "set print finish [on|off]" för att styra visningen av returvärdet när du använder kommandot "finish";
    • "ställ in maxdjup för utskrift" för att begränsa utmatningen av kapslade strukturer;
    • "ställ in råvärden för utskrift [på|av]" för att aktivera/inaktivera formatering av utdatavärden;
    • "set logging debugredirect [on|off]" för att styra att spara felsökningsutdata till en loggfil;
    • En serie nya kommandon "ställ in stil";
    • "set print frame-info […]" för att definiera informationen som ska skrivas ut när stackens ramtillstånd visas;
    • "ställ in tui compact-source" för att aktivera kompakt läge för visning av kod i TUI-gränssnittet (Text User Interface);
    • "infomoduler […]" för att begära information om Fortran-moduler;
    • Istället för "set/show print raw frame-arguments", föreslås kommandot "set/show print raw-frame-arguments" (använder ett bindestreck istället för ett mellanslag som avgränsare);
  • I kontrollmjukvarugränssnitt GDB/MI lagt till nya kommandon "-complete", "-catch-throw", "-catch-rethrow", "-catch-catch", "-symbol-info-functions", "-symbol-info-types",
    "-symbol-info-variabler", "-symbol-info-modules", "-symbol-info-module-functions" och "-symbol-info-module-variables" är ekvivalenta med samma GDB-kommandon. Som standard är den tredje versionen av MI-tolken aktiverad (-i=mi3);

  • Lade till nya inbyggda variabler:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Lade till alternativet "--with-system-gdbinit-dir" till konfigureringsskriptet för att bestämma sökvägen till gdbinit-systemfilerna;
  • Ett antal förbättringar har gjorts av Python API. Lade till möjligheten att bygga med Python 3 på Windows;
  • Kraven på monteringsmiljön har höjts. Att bygga GDB och GDBserver kräver nu minst GNU make 3.82. När du bygger med ett externt readline-bibliotek krävs minst GNU readline 7.0.

Källa: opennet.ru

Lägg en kommentar