GNU 调试器 GDB 14.1 现已发布。GDB 是 Ada、C、C++、Go 与 Rust 等源代码级调试器语言,它可以在最流行的 GNU/Linux、Unix 和 Windows 变体上运行,并且调试十几种不同的处理器架构。
主要更新内容
-
删除的功能,删除的配置:
-
GDB 不再支持 AiX 4.x、5.x 和 6.x。支持的最低版本为 AiX 7.1。
-
GDB/MI 版本 1 支持已被删除
-
-
对 Debugger Adapter Protocol (DAP) 的初始内置支持
-
GDB 现在可以识别 NO_COLOR 环境变量
-
初步支持大于 64 位的整数类型
-
Breakpoints 现在可以是 inferior-specific
-
新的 convenience function "$_shell",用于执行 shell 命令并返回其结果。
-
Python 支持
- 新类 gdb.Thread
- 新类 gdb.unwinder.FrameId
- 新类 gdb.ValuePrinter
- 新的 gdb.Inferior.arguments 属性
- 新的 gdb.Inferior.main_name 属性
- 新的 gdb.Breakpoint.inferior 属性
- 新的 gdb.Progspace.symbol_file 属性
- 新的 gdb.Progspace.executable_filename 属性
- 新函数 gdb.execute_mi(COMMAND, [ARG]...)
- 新函数 gdb.block_signals()
- 新方法 gdb.Frame.static_link
- 新的 gdb.Inferior 'clear_env'、'set_env' 和 'unset_env' 方法
- 新的 gdb.Type 现在具有 'is_array_like' 和 'is_string_like' 方法
- 新的 gdb.Value 'assign' 方法
- 新的 gdb.Value 'to_array' 方法
- 新的 gdb.Progspace 'objfile_for_address' 方法
- gdb.LazyString 现在实现 __str__ 方法
- 新事件 gdb.ThreadExitedEvent
- 新事件 gdb.ExecutableChangedEvent
- 新事件 gdb.NewProgspaceEvent
- 新事件 gdb.FreeProgspaceEvent
- ......
-
Remote protocol
-
支持启用或禁用单个远程目标功能
-
-
GDB/MI 支持
- 新的“no-history”停止原因
- 支持 inferior-specific breakpoints
- 在 breakpoint-created 的通知中和 -break-insert 命令的结果中出现的 bkpt 元组现在可以包含一个可选的"inferior"字段,用于 main breakpoint 和每个位置(如果 breakpoint 是 inferior-specific)。
- 尝试使用不存在的 thread ID 创建 thread-specific breakpoint 现在会导致错误
- 新增 "simple-values-ref-types"-list-feature 值,指示各种命令中的--simple-values 选项如何考虑引用类型。
-
增强的 AArch64 支持
-
对 Scalable Matrix Extension (SME) 和 Scalable Matrix Extension 2 (SME2) 的初步支持
-
“org.gnu.gdb.aarch64.pauth”指针验证功能现已弃用,转而使用 "org.gnu.gdb.aarch64.pauth_v2 "功能字符串。
-
-
增强的 Ada 支持
-
支持 Ada 2022 target name symbol ('@')
-
支持 Ada 2022 'Enum_Rep 和 'Enum_Val 属性
-
-
各种各样的
- “list”命令现在接受“.”作为参数,告诉 GDB print 当前帧内执行点周围的位置。
- printf 和 dprintf 命令的新“%V”输出格式。
- printf 命令现在将从 inferior 获取的字符串大小限制为"max-value-size"设置的值。
- 通过新的 --additional-debug-dirs=PATHs 配置选项,支持在配置时扩展 GDB 参数"debug-file-directory"的默认值。
- 新命令“info main”
- 新命令“set tui mouse-events [on|off]”(默认打开)
- 新命令“set always-read-ctf on|off”(默认关闭)
- 各种新的调试和维护命令
更多详情可查看:https://www.mail-archive.com/[email protected]/msg03236.html