Versión do depurador GDB 11

Presentouse a versión do depurador GDB 11.1 (o primeiro lanzamento da serie 11.x, utilizouse a rama 11.0 para o desenvolvemento). GDB admite a depuración a nivel de orixe para unha ampla gama de linguaxes de programación (Ada, C, C++, Objective-C, Pascal, Go, Rust, etc.) en varios hardware (i386, amd64, ARM, Power, Sparc, RISC). - V, etc.) e plataformas de software (GNU/Linux, *BSD, Unix, Windows, macOS).

Melloras clave:

  • A TUI (Text User Interface) engadiu soporte para accións do rato e a posibilidade de desprazar o contido coa roda do rato. Activouse o reenvío de combinacións de teclas a GDB que non se procesan en TUI.
  • Engadido soporte para o mecanismo ARMv8.5 MTE (MemTag, Memory Tagging Extension), que permite vincular etiquetas a cada operación de asignación de memoria e organizar unha comprobación de punteiros ao acceder á memoria, que debe estar asociada coa etiqueta correcta. O protocolo de control de depuración remota ofrece soporte para os paquetes "qMemTags" e "QMemTags" para vincular etiquetas á memoria.
  • Cambiouse a lóxica para ler ficheiros de configuración. O ficheiro .gdbinit agora compróbase na seguinte orde: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit e $HOME/.gdbinit. Eses. primeiro no subdirectorio config, e só despois no directorio home.
  • No comando "break […] if CONDITION", a saída de erro deténse cando unha condición non é válida en determinados lugares, se a condición é válida polo menos nun caso.
  • Engadiuse compatibilidade para depurar volcados de núcleo xerados para os programas Cygwin compilados para a arquitectura x86_64.
  • Engadido soporte para tipos de punto fixo, así como as constantes DW_AT_GNU_numerator e DW_AT_GNU_denominator.
  • Engadiuse a configuración de "inicio silencioso activado | desactivado"; cando está "activado", semellante á opción "-silent".
  • O comando "ptype" implementa as opcións /x" e "/d" para seleccionar hexadecimal ou decimal cando se mostran tamaños e desprazamentos. Engadiuse a configuración "tipo de impresión hexadecimal activado | desactivado" para usar valores hexadecimais na saída do comando "ptype".
  • No comando "inferior", cando se chama sen argumentos, ofrécese a saída do obxecto de depuración actual (inferior).
  • A saída do comando "fonte de información" foi reelaborada.
  • Engadido o comando "versión de estilo en primeiro plano | fondo | intensity" para controlar o estilo de numeración de versións.
  • Engadíronse novas opcións de liña de comandos: “—early-init-command” (“-eix”), “—early-init-eval-command” (“-eiex”), “—qualified” (para comandos '-break-insert ) ' e '-dprintf-insert'), "--force-condition" (para os comandos '-break-insert' e '-dprintf-insert'), "--force" (para a '-break-condition 'comando).
  • O comando "-file-list-exec-source-files" permítelle especificar expresións regulares para filtrar os ficheiros fonte a procesar. Engadiuse un campo "depuración-lectura completa" á saída para indicar ata que punto se cargou a información de depuración.
  • Realizáronse melloras na API de Python. Engadíronse novos métodos gdb.Frame.level() e db.PendingFrame.level() para devolver o nivel de pila para un obxecto Frame. Cando se activa un punto de captura, a API de Python garante que se envíe gdb.BreakpointEvent en lugar de gdb.StopEvent. Engadiuse a configuración "python ignore-environment on|off" para ignorar as variables de ambiente e "python dont-write-bytecode auto|on|off" para desactivar a escritura de bytecode.
  • Realizáronse melloras na API de Guile. Engadíronse novos procedementos valor-referencia-valor, valor-rvalue-referencia-valor e valor-const-valor.
  • As dependencias de montaxe necesarias inclúen a biblioteca GMP (GNU Multiple Precision Arithmetic).
  • O soporte para a plataforma ARM Symbian (arm*-*-symbianelf*) descontinuouse.

Fonte: opennet.ru

Engadir un comentario