GDB

Скріншот програми:
GDB
Дані програми:
Версія: 8.1.1 оновлений
Дата завантаження: 16 Aug 18
Розробник: Stan Shebs
Ліцензія: Безкоштовно
Популярність: 181

Rating: 3.5/5 (Total Votes: 2)

GDB (також відомий як налагоджувач проекту GNU Project) - це програмне забезпечення з відкритим кодом і вільним командним рядком, яке дозволяє користувачам і розробникам бачити те, що відбувається всередині іншої програми, тоді як це виконано, або чому програма збірається в певному пункті.


Особливості з першого погляду

Ключові функції включають в себе чотири різних способи, які допомагають розробникам виявляти помилки в дії, запускати додаток та вказувати що-небудь, що може вплинути на його поведінку, зупинити програму в певних умовах, перевіряти журнали при впакуванні програми, поступово змінювати речі програма для експерименту з виправленням ефектів однієї проблеми та продовження, вивчаючи про іншу помилку. Він також підтримує налагодження програм, написаних на широкому діапазоні мов програмування, включаючи C, C ++, Pascal. , Ada, Objective-C та багато інших.

Це програма командного рядка

Налагоджувач проекту GNU - це завжди буде застосунок командного рядка. Щоб використовувати його, ви повинні запустити & ldquo; gdb & rdquo; команду в емуляторі термінала, потім виконайте команду & ldquo; довідку & rdquo; команда (без лапок) - підказка gdb. Крім того, ви також можете ввести & ldquo; допомогти всім & rdquo; команду, щоб переглянути список всіх команд, введіть "help", після чого введіть назву команди, щоб переглянути повну документацію, введіть "help", а потім назву класу, щоб переглянути список команд у цьому класі, щоб ввести слово "apropos word" для пошуку для команд, пов'язаних з "словом".


Список класів команд

Після введення команди & ldquo; допомогти & rdquo; як описано вище, ви побачите список класів команд, включаючи псевдоніми (відображає псевдоніми інших команд), точки останова (робить програму зупинятися у певних точках), дані (для вивчення даних), файли (для розгляду файлів) , внутрішні (команди обслуговування), неясність (незрозумілі функції), запуск (для запуску програми), стека (для вивчення стеку), статусу (для запитів статусу), підтримки (для служб підтримки), tracepoints (для відстеження виконання програми без зупинка програми) і користувальницькі (визначені користувачем команди)

Підтримувані апаратні платформи та операційні системи

GDB був розроблений з офсетного поля як крос-платформне додаток, що працює на основних операційних системах, таких як Microsoft Windows і деякі з найпопулярніших варіантів Linux / UNIX.

  • PR gdb / 22824 (вводять в оману опис нової функції "Python" в файлі GDB 8.1 NEWS)
  • PR gdb / 22849 (ctrl-c не працює на розширеному пульті)
  • PR gdb / 22907 ([Regression] gdbserver не працює з двома файлами)
  • PR gdb / 23028 (непослідовне розбирання vcvtpd2dq)
  • PR gdb / 23053 (Fix -D_GLIBCXX_DEBUG gdb-add-index regression)
  • PR gdb / 23127 ([AArch64] GDB не можна використовувати для налагодження програмного забезпечення, що використовує високі віртуальні адреси)
  • PR-сервер / 23158 (gdbserver більше не працює на Windows)
  • значення точки зупинки PR / 23210 ([8.1 / 8.2 Regression] адреса Bogus Breakpoint скоригована з 0xf7fe7dd3 на 0xffffffff7f7dd3)

Що нового у версії 8.1:

  • Порожні точки на функціях C ++ тепер встановлюються для всіх областей за умовчанням (& quot; дикий "відповідність);
  • Підтримка вставки точок зупинки на функції, позначені тегами C ++ ABI
  • Арифметична емуляція з плаваючою точкою цілі під час оцінки експресії (потрібна MPFR 3.1 або пізніша версія);
  • Різні поліпшення сценаріїв Python;
  • Покращена підтримка іржі; зокрема, об'єкти Trait тепер можуть бути перевірені при налагодженні коду Rust;
  • GDB більше не робить припущень щодо типу символів без налагодження інформації, щоб уникнути помилкових та часто незрозумілих результатів;
  • Команди "увімкнути" та "вимкнути" тепер приймають діапазон точок відмови "
  • Нова команда "start" для запуску програми при першій інструкції
  • Нова команда 'rbreak' для вставки декількох точок зупинки за допомогою шаблону регулярного виразу (потрібен Python);
  • Тепер команда 'ptype' підтримує друк зсуву та розміру полів у структурі;
  • Команда gcore тепер підтримує скидання всіх відображень пам'яті (опція командного рядка '-a');
  • Нові ярлики для режиму TUI Single-Key: "I" для stepi та "o" для nexti;
  • Покращення GDBсервера:
  • Підтримка передачі змінних оточення GDBserver;
  • Підтримка для запуску нижчих процесів із зазначеним початковим робочим каталогом;
  • У системах Unix, підтримка розширення globbing та змінна заміна невірних аргументів командного рядка;
  • Різні поліпшення завершення;
  • Тепер команда, яка використовується для компіляції та введення коду за допомогою команди 'compile', налаштовується;
  • Нова опція командного рядка "--readnever" для швидкого запуску GDB, коли інформація про налагодження не потрібна;
  • Підтримка наступних нових вітчизняних конфігурацій:
  • FreeBSD / aarch64 (aarch64 * - * - freebsd *);
  • FreeBSD / arm (arm * - * - freebsd *);
  • Підтримка наступних нових цілей:
  • FreeBSD / aarch64 (aarch64 * - * - freebsd *);
  • FreeBSD / arm (arm * - * - freebsd *);
  • OpenRISC ELF (or1k * - * - elf)
  • Вилучено підтримку для наступних цілей та рідної конфігурації:
  • Solaris2 / x86 (i? 86 - * - solaris2. [0-9]);
  • Solaris2 / sparc (sparc * - * - solaris2. [0-9]);

Що нового в версії:

  • Для створення цієї версії GDB зараз потрібні наступні інструменти:
  • компілятор C ++ -11 (наприклад, GCC 4.8 або новіша версія);
  • GNU версією версії 3.81 або пізнішої версії.
  • Зміни в цьому випуску включають:
  • C ++: підтримка посилань rvalue
  • Покращення сценаріїв Python:
  • Нові функції для запуску, зупинки та доступу до поточної запису btrace.
  • Підтримка посилання на RVue в gdb.Type.
  • інтерпретатор команд GDB:
  • Команди користувача тепер приймають необмежену кількість аргументів.
  • "eval" & quot; Тепер команда розширює користувальницькі аргументи.
  • Підтримка DWARF версії 5
  • (зауважте, що його індекс .debug_names ще не підтримується).
  • Удосконалення GDB / MI:
  • Нова команда -file-list-shared-бібліотек для переліку загальних бібліотек у програмі.
  • Нова команда -target-flash-erase для стирання флеш-пам'яті.
  • Підтримка рідної FreeBSD / MIPS (mips * - * - freebsd)
  • Підтримка наступних цілей:
  • Synopsys ARC (arc * - * - elf32)
  • FreeBSD / MIPS (mips * - * - freebsd)
  • Різні вдосконалення:
  • Перенаправлення командного рядка тепер підтримується хостами MS-Windows.
  • Підтримка імен потоків на MS-Windows.
  • Підтримка реєстрації PKU на GNU / Linux.
  • Підтримка описів цілей на sparc32 та sparc64
  • Нова команда GDB / CLI для видалення флеш-пам'яті
  • Підтримка запису та відтворення інструкцій rdrand та rdseed.
  • Підтримка наступних функцій була вилучена:
  • Підтримка Java-програм, зібраних за допомогою gcj
  • Підтримка наступних конфігурацій:
  • FreeBSD / alpha (alpha * - * - freebsd *)
  • GNU / kFreeBSD / alpha (alpha * - * - kfreebsd * -gnu)

Що нового у версії 7.9.1:

  • PR build / 18033 gdb / iq2000-tdep.c та gdb / compile / compile - *. c)
  • PR build / 18298 (команда & quot; компілювати & quot; не може знайти компілятора, якщо інструменти налаштовані з триплетом замість чотирьох)
  • PR tui / 18311 (випадковий SEGV при відтворенні регістрів у режимі TUI)
  • PR python / 18299 (виняток при реєстрації глобального гарного принтера в режимі активного)
  • PR python / 18066 (аргумент "слово" здається розбитим у командному файлі (text, word))
  • PR Pascal / 17815 (Виправте поведінку паскала для полів класу з тестовою темою)
  • PR python / 18285 (ptype expr-with-xmethod викликає SEGV)

Що нового у версії 7.9:

  • Покращення сценаріїв Python.
  • Виготовлення вихідного коду та ін'єкція в нижчий.
  • Нові команди, параметри, зручності змінних / параметри.
  • Підтримка MIPS SDE (mips * -sde * -elf *).
  • Краща обробка сигналів при налагодженні різьбових програм.

    • PR symtab / 17642 ([7.8 regression] internal)

    Що нового в версії 7.8.2: -ресурс: resolve_dynamic_struct: твердження `TYPE_NFIELDS (type)> 0 'не вдалося.)

  • PR binutils / 17677 (_bfd_elf_get_synthetic_symtab працює в O (n ^ 2) складності)
  • PR gdb / 16215 (SPARC: не може обчислити CFA для цього кадру)
  • PR gdb / 17525 (команди target-async: точки припинення не виконуються при запуску програми з -x-скрипту)
  • PR cli / 17828 ([7.8 regression] -batch -ex r порушує термінал)

Що нового в версії 7.8.1:

  • PR python / 17364 (потрібні кращі імена принтера в bound_registers.py)
  • PR build / 17104 (CFLAGS = "-Wall -Wextra" gdb / configurewithwith babeltrace не вдається)
  • PR gdb / 17345 (babeltrace (1.1.2 і пізніші) скаржиться на дані ctf, створені GDB)
  • PR build / 17298 (gcore: не вдається отримати регістри: немає такого процесу)
  • PR python / 17342 (Xmethod Python не сумісний з Python 3)
  • PR python / 17355 (аварія на фільтрах Python з незчислими аргументами)
  • PR guile / 17367 (обчислення шляху гільдії невірно, коли сценарій pkg-config постачається як arg для -with-guile)
  • PR gdb / 17247 (gdb зависає в багатопотоковій програмі)
  • PR gdb / 17347 (Регресія: GDB зупинено на запуску з доданим процесом)
  • PR gdb / 17407 (регресія для читання Linux vDSO)
  • PR-сервер / 17457 (aarch64 / gdbserver: відображаються невірні регістри з плаваючою комою)
  • PR-сервер / 17487 (state-> dr_control_mirror == 0 невдалий підтвердження в gdbserver у Windows)
  • PR gdb / 17472 (з анотаціями, введення під час виконання на передній план аварій readline / gdb)
  • PR gdb / 17471 (повторення фонової команди робить його переднім планом)
  • PR cli / 17300 (аварія в режимі без зупинки з продовженням -a & (readline_callback_read_char () викликається без обробника!))
  • PR python / 17372 (python висить при відображенні довідки ())
  • PR python / 17408 (../../gdb/infrun.c:5256: внутрішня помилка: switch_back_to_stepped_thread: Затвердження `! schedlock_applies (1) 'не вдалося).

Що нового у версії 7.8:

  • Покращення сценаріїв Python.
  • Нові команди, параметри, зручності змінних / параметри.
  • Додатки для віддаленого протоколу та GDBserver.
  • Нова конфігурація цілей (PowerPC64 GNU / Linux small-endian).
  • вдосконалення btrace.
  • Підтримка автоматичних масивів з змінною довжиною ISO C99.
  • "Порівняння розділів" & quot; команда тепер працює на всіх цілях.
  • "Націлена на рідну" & quot; команда тепер підключається до рідної цілі.

Що нового у версії 7.7:

  • Покращена підтримка сценаріїв Python.
  • Деякі поліпшення C ++.
  • Нові команди, параметри, зручності змінних / параметри.
  • Деякі нові команди та вдосконалення GDB / MI.
  • Додатки для віддаленого протоколу та GDBserver.
  • Нові цільові конфігурації (Nios II, TI MSP430).
  • Підтримка GDB Windows x64 розгортання даних.
  • Підтримка SystemTap SDT зондів на AArch64 GNU / Linux.
  • CTF (Common Trace Format).
  • Нові скрипти gcore і gdb-add-index.sh.
  • Покращена підтримка запису / відтворення arm * -linux
  • Видалено підтримку застарілих конфігурацій NetBSD та OpenBSD. ELF варіанти цих конфігурацій підтримуються.
  • Налаштування & quot; set | remote remote & quot; команди застаріли на користь "show | show serial baud".

Що нового в версії 7.6.2:

  • PR breakpoint / 16251 (помилка апаратного пункту AArch64 після вилка)
  • PR gdb / 16303 (GDB 7.6.1 не працює з binutils 2.24 на MIPS16 та microMIPS)

Що нового у версії 7.6.1:

  • PR tdep / 15420 (Неможливо налагодити низку програм у новіших версіях x86-solaris - Solaris 10, оновлення 10 або пізнішої версії)
  • Пульт дистанційного керування PR / 15455 (зламаний пакет віддалених QTro)
  • PR build / 15476 (Неможливо зібрати з-за неповного типу переліку у utils.h)
  • PR-сервер / 15594 (підтримка tls у форматі 64x32 x86 gdbserver не розширює адресу до 64 біт)
  • PR-сервер / 15075 (dprintf інтегрується з & quot; наступним & quot;)
  • PR-сервер / 15434 (dprintf використовує синхронне "продовження" навіть у режимі без зупинки)
  • PR tui / 14880 (у розбитих регістраних макетах, що призводять до відмови в підтвердженні значення. c)
  • PR c ++ / 15519 (GDB 7.6 на 94x повільніше, ніж GDB 7.5.1, використовуючи певний файл основного файлу)
  • PR gdb / 15837 (GDB друкує значення записів для локальних змінних)
  • PR gdb / 15415 (gdb вирішує символічні посилання при передачі argv [0])
  • PR cli / 15603 (CTRL-C більше не може переривати нижчий рівень)
  • PR gdb / 15604 (деградація гетерогенного гнізда 7,5 регресії)

Що нового у версії 7.5:

  • Підтримка мовлення
  • Нові цілі (x32 ABI, microMIPS, Renesas RL78, HP OpenVMS ia64).
  • Покращення сценаріїв Python.
  • SDT (Static Defined Tracing) з підтримкою зондів SystemTap.
  • Покращення GDBserver (підключення stdio, цільова сторона оцінки стану точки припинення, вдосконалення віддаленого протоколу).
  • Інші різноманітні вдосконалення (можливість зупинки, коли загальнодоступна бібліотека завантажується / вивантажується, динамічна printf тощо).
  • Зворотне налагодження на ARM.
  • Двійкове "gdbtui" & quot; був залишений і більше не може бути побудований. Використовуйте & quot; gdb-toi & quot; замість цього.

Що нового у версії 7.4:

  • Поточні строкові ознаки тепер обробляються послідовніше.
  • Незацікавлені функції та файли тепер можуть бути пропущені після переходу за допомогою функції & quot; пропустити & quot; і "Пропустити файл" & quot; команди.
  • Додано команди для встановлення та отримання максимально допустимих лімітів віддаленої апаратної точки спостереження.
  • Сценарії Python були значно покращені.
  • Зроблено багато інших вдосконалень, виправлень та загальних змін.

Що нового у версії 7.1:

  • Підтримка нових цілей (включаючи симулятор):
  • Xilinx MicroBlaze
  • Renesas RX
  • Основні нові функції:
  • Багатопрограмна налагодження, що дозволяє відладчику контролювати більше, ніж
  • одна програма в межах одного сеансу GDB
  • Позиція незалежної виконуваної (PIE) налагодження.
  • У ньому також є багато розширень та виправлень, зокрема:
  • Підтримка Python була розширена.
  • Покращення підтримки C ++ (простору імен, оператори листи, виправлення помилок)
  • Покращення підтримки Tracepoint.
  • Покращення обробки запису (збереження / відновлення журналу виконання, апаратного забезпечення
  • Підтримка watchpoint.
  • Покращення віддаленого протоколу (налагодження ядра Linux, нові пакети
  • для підтримки трафіку

Схожі програми

Linaro GDB
Linaro GDB

20 Feb 15

pyrasite
pyrasite

14 Apr 15

DBGMEM
DBGMEM

3 Jun 15

KDbg
KDbg

14 Apr 15

Інші програми розробника Stan Shebs

Xconq
Xconq

2 Jun 15

GDB

Коментар не знайдено
додати коментар
Включіть картинки!
Пошук за категоріями