GDB 9 调试器发布

由...所提交 调试器发布 GDB 9.1 (9.x系列的第一个版本,使用分支9.0进行开发)。 GDB支持多种编程语言(Ada、C、C++、Objective-C、Pascal、Go等)在各种硬件(i386、amd64、ARM、Power、Sparc、RISC-V)上进行源代码级调试等)和软件平台(GNU/Linux、*BSD、Unix、Windows、macOS)。

钥匙 改进:

  • 已停止对 Solaris 10 和 Cell Broadband Engine 平台的支持;
  • 添加了德州仪器处理器中使用的 PRU(可编程实时单元)子系统的新模拟器(pru-*-elf);
  • 添加了在多线程模式下快速加载调试符号的实验模式(通过“maint set work-threads unlimited”设置启用);
  • 可以在命令名称中使用符号“.”;
  • 添加了在 Fortran 中的嵌套函数和子例程上设置断点的功能;
  • 已开展统一风格并提高命令可读性的工作;
  • 已经实现了使用破折号字符('-OPT')传递命令参数的标准基础设施,它允许使用 tab 键自动完成;
  • “printf”和“eval”命令实现了对C和Ada风格输出字符串的支持,而无需直接调用程序中的函数;
  • 添加了对基于“信息源”命令中的正则表达式过滤输出文件的支持;
  • 在“set print frame-arguments”设置中,实现了“presence”参数,设置后,参数仅显示存在指示符“…”,而不显示名称和值;
  • 在界面中 TUI 命令“focus”、“winheight”、“+”、“-”、“">”、“<”现在区分大小写;
  • 对于命令“打印”、“编译打印”、“回溯”、“框架”
    apply”、“tfaas”和“faas”选项已实现覆盖全局设置(例如,通过“set print [...]”设置的设置);

  • “info types”命令中添加了“-q”选项,以禁用某些标头的输出;
  • 在设置中,您现在可以指定“u”,而不是“无限制”值;
  • 添加了新命令:
    • “define-prefix”定义您自己的前缀命令;
    • “|” 或“管道”来运行命令并将输出重定向到 shell 命令;
    • “with”以临时更改的设置运行指定的命令;
    • “set may-call-functions”控制子程序是否可以从GDB调用;
    • “set print finish [on|off]”控制使用“finish”命令时返回值的显示;
    • “设置打印最大深度”限制嵌套结构的输出;
    • “set print raw-values [on|off]” 启用/禁用输出值的格式;
    • “setlogging debugredirect [on|off]”控制将调试输出保存到日志文件;
    • 一系列新的“设置样式”命令;
    • “set print frame-info […]”定义显示堆栈帧状态时应打印的信息;
    • “set tui Compact-source”启用紧凑模式以在 TUI(文本用户界面)界面中显示代码;
    • “info module […]” 请求有关 Fortran 模块的信息;
    • 建议使用命令“set/show print raw-frame-arguments”代替“set/show print raw-frame-arguments”(使用破折号而不是空格作为分隔符);
  • 在控制软件界面 GDB/MI 添加了新命令“-complete”、“-catch-throw”、“-catch-rethrow”、“-catch-catch”、“-symbol-info-functions”、“-symbol-info-types”、
    “-symbol-info-variables”、“-symbol-info-modules”、“-symbol-info-module-functions”和“-symbol-info-module-variables”相当于相同的 GDB 命令。 默认情况下,激活第三版MI解释器(-i=mi3);

  • 添加了新的内置变量:
    • $_gdb_主要,$_gdb_次要;
    • $_gdb_setting、$_gdb_setting_str、$_gdb_maint_setting、
    • $_gdb_maint_setting_str
    • $_cimag,$_creal
    • $_shell_exitcode, $_shell_exitsignal
  • 在配置构建脚本中添加了“--with-system-gdbinit-dir”选项来确定 gdbinit 系统文件的路径;
  • Python API 已进行了许多改进。 添加了在 Windows 上使用 Python 3 进行构建的能力;
  • 对装配环境的要求提高了。 构建 GDB 和 GDBserver 现在至少需要 GNU make 3.82。 使用外部 readline 库构建时,至少需要 GNU readline 7.0。

来源: opennet.ru

添加评论