GDB 9 調試器發布

介紹 偵錯工具發布 通用數據庫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

添加評論