Випуск відладчика 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 (Programmable Real-time Unit), що використовується в процесорах Texas Instruments (pru-*-elf);
  • Додано експериментальний режим швидкого завантаження налагоджувальних символів у багатопотоковому режимі (включається через налаштування 'maint set worker-threads unlimited');
  • Забезпечено можливість використання в іменах команд символу '.';
  • Додано можливість встановлення точок зупинки на вкладені функції та підпрограми у Fortran;
  • Проведено роботу з приведення до єдиного стилю та покращення читаності команд;
  • Реалізовано штатну інфраструктуру для передачі аргументів команд із застосуванням символу тире ('-OPT'), що дозволяє застосовувати автодоповнення клавішею табуляції;
  • У командах «printf» та «eval» реалізована підтримка виведення рядків у стилях Сі та Ада без безпосереднього виклику функції у програмі;
  • У команді «info sources» додано підтримку фільтрації виведених файлів на основі регулярного вираження;
  • У налаштуванні "set print frame-arguments" реалізовано параметр "presence", при встановленні якого для аргументів виводиться лише індикатор присутності "..." замість виведення імені та значення;
  • В інтерфейсі TUI команди "focus", "winheight", "+", "-", ">", "<" тепер чутливі до регістру символів;
  • Для команд "print", "compile print", "backtrace", "frame
    apply», «tfaas» та «faas» реалізовані опції для перевизначення глобальних налаштувань (наприклад, що виставляються через «set print […]»);

  • У команду "info types" додано опцію "-q" для відключення виведення деяких заголовків;
  • У налаштуваннях замість значення unlimited тепер можна вказувати u;
  • Додані нові команди:
    • "define-prefix" для визначення власних префіксних команд;
    • «|» або "pipe" для запуску команди та перенаправлення виведення в команду програмної оболонки (shell);
    • "with" для запуску зазначеної команди з тимчасово зміненими налаштуваннями;
    • "set may-call-functions" для управління можливістю виклику підпрограми з GDB;
    • "set print finish [on | off]" для управління відображенням значення, що повертається при використанні команди "finish";
    • "set print max-depth" для обмеження виведення вкладених структур;
    • "set print raw-values ​​[on | off]" для включення/вимкнення форматування виведених значення;
    • "set logging debugredirect [on | off]" для управління збереженням налагоджувального виведення в лог-файл;
    • Серія нових команд "set style";
    • "set print frame-info […]" для визначення інформації, яку слід виводити при відображенні стану кадру стека;
    • "set tui compact-source" для включення компактного режиму відображення коду в інтерфейсі TUI (Text User Interface);
    • "info modules […]" для запиту відомостей про модулі 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_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • У складальний скрипт configure додано опцію «—with-system-gdbinit-dir» для визначення шляху до системних файлів gdbinit;
  • Внесено порцію покращень у Python API. Додана можливість складання c Python 3 у Windows;
  • Підвищено вимоги до складального оточення. Для складання GDB та GDBserver тепер потрібно як мінімум GNU make 3.82. При складанні із зовнішньою бібліотекою readline потрібно як мінімум GNU readline 7.0.

Джерело: opennet.ru

Додати коментар або відгук