GDB 14.1 ja va ser alliberat i aquestes són les seves novetats

Depurador GNU

GNU Debugger és el depurador estàndard per al compilador GNU. És un depurador portable que es pot utilitzar a diverses plataformes Unix

fa poc es va donar a conèixer el llançament de la nova versió del depurador GDB 14.1, sent aquesta la primera versió de la sèrie 14 i en la qual s'han afegit una gran quantitat de funcions, atributs, classes i esdeveniments nous, així com també millores de suport, correccions d'errors i més.

Per als que desconeixen de GDB, han de saber que aquest és un depurador del projecte GNU, i aquest depurador permet «veure» el que està passant «dins» un altre programa mentre s'executa, o quin altre programa estava fent en el moment en què hi va haver alguna errada.

BGF pot fer quatre tipus de coses principals (a més d'altres coses en suport d'aquestes) per ajudar l'usuari a detectar errors en l'execució de programes:

  1. Iniciar un programa, especificant qualsevol cosa que en pugui afectar el comportament.
  2. Teniu la capacitat d'aturar el programa en condicions específiques.
  3. Examinar el que va passar quan el programa es va aturar.
  4. Canviar coses al programa, perquè l'usuari pugui experimentar amb corregir els efectes d'un error i continuar aprenent sobre un altre.

Aquests programes podrien estar executant-se a la mateixa màquina que GDB (natiu), en una altra màquina (remota) o en un simulador. GDB pot executar-se en la majoria variants populars de UNIX i Microsoft Windows, així com a macOS.

BGF admet la depuració a nivell de font per a una àmplia gamma de llenguatges de programació, com ara: Ada, Assembly, C, C++, D, Fortran, Go, OpenCL, Objective-C, Modula-2, Pascal i Rust.

Principals novetats de GDB 14.1

En aquesta nova versió que es presenta de GDB 14.1 és el suport integrat inicial per el protocol adaptador de depuració (DAP) desenvolupat per Microsoft i aquest permet implementar un depurador genèric perquè les eines de desenvolupament puguin comunicar-se amb els diferents depuradors a través d'adaptadors de depuració, els quals alhora es poden reutilitzar en múltiples eines de desenvolupament, el bàsicament es redueix a l'esforç per admetre un nou depurador en diferents eines.

Un altre dels canvis que destaca aquesta nova versió són les millores de suport implementades, tals com el suport inicial per a tipus d'enters més grans de 64 bits, el suport per habilitar o deshabilitar funcions d'objectius remots individuals, així com també el suport millorat per a Ada per als atributs The Ada 2022 ‘Enum_Rep and ‘Enum_Val.

A més d'això, GDB ara reconeix la variable d'entorn NO_COLOR i compta amb compatibilitat millorada amb AArch64, doncs s'hi va afegir el suport inicial per a l'extensió SME i PIME2.

D'altra banda, s'han eliminat funcions i configuracions de GDB que ja són compatibles amb el llançament nou, per exemple GDB 14.1 ja no és compatible amb AiX 4.x, 5.x i 6.x, s'ha eliminat la compatibilitat amb GDB/MI versió 1.

S'ha afegit la funció $_shell» per executar una ordre en un intèrpret d'ordres i tornar el resultat, la comanda «list» ara accepta ‘.’ com a argument, per imprimir la ubicació del punt d'execució en el marc de pila actual, s'ha afegit %V al format de sortida per a les comandes printf i dprintf, la comanda printf ara limita la mida de les cadenes obtingudes de l'inferior al valor del ‘max-value-size’ configuració i es van afegir noves ordres de depuració i manteniment.

Pel que fa a les millores de suport de Python, aquest va ser el que més va rebre i es destaca el següent:

  • Noves classes: gdb.Thread, gdb.unwinder.FrameId, gdb.ValuePrinter
  • Nous atributs: gdb.Inferior.arguments, que manté la línia d'ordres arguments a l'inferior, si es coneixen, gdb.Inferior.main_name, que conté el nom del main de l'inferior, si es coneix, gdb.Breakpoint.Inferior, gdb.Progspace.symbol_file, gdb.Progspace.executable_filename
  • Noves funcions: gdb.execute_mi(COMMAND, [ARG]…), gdb.block_signals()
  • Nous mètodes: gdb.Value 'to_array', gdb.Progspace 'objfile_for_address','gdb.Frame.static_link, gdb.Inferior 'clear_env', 'set_env' i 'unset_env' 
  • Nou esdeveniments: gdb.ThreadExitedEvent, gdb.ExecutableChangedEvent gdb.NewProgspaceEventy gdb.FreeProgspaceEvent.
  • L'API Disassembler del mòdul gdb.disassembler ha estat ampliada per incloure suport d'estil
    gdb.parse_and_eval
  • L'atribut gdb.unwinder.Unwinder.enabled ara només pot acceptar valors de tipus bool.
    Ara ja no podeu subclassificar el Tipus gdb.disassembler.DisassemblerResult.

Finalment, si estàs interessat en poder conèixer més a l'respecte, Pots consultar els detalls al següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.