GNU Debugger — переносимий зневаджувач проекту GNU, який працює на багатьох UNIX-подібних системах і вміє проводити зневадження для багатьох мов програмування, включаючи Ada, Сі, , Objective-C, Pascal, Фортран тощо. Працює на різних апаратних платформах (i386, amd64, ARM, PowerPC, Sparc тощо) і програмних платформах ((GNU/Linux), Unix, Windows).
Тип | Зневаджувач |
---|---|
Розробник | GNU |
Перший випуск | 1986 |
Стабільний випуск | 9.1 (8 лютого 2020 ) |
Операційна система | Unix-подібні, Windows |
Мова програмування | C і Scheme |
Ліцензія | GNU GPL |
Репозиторій | sourceware.org/git/binutils-gdb.git |
Вебсайт | gnu.org/software/gdb/ |
|
Історія
Спочатку написаний Річардом Столлменом в 1988 році. З 1990 до 1993 підтримувався , під час його роботи в компанії .
Технічні деталі
Особливості
GDB пропонує широкі засоби для спостереження і контролю за виконанням комп'ютерних програм. Користувач може змінювати внутрішні змінні програм і навіть викликати функції незалежно від звичайної поведінки програми.
Процесори підтримувані GDB (2003): Alpha, ARM, , (IBM System/370) та (390), x86 та x86-64, IA-64 (Itanium), Motorola 68000, MIPS, PA-RISC, PowerPC, SuperH, SPARC, VAX, , ARC, AVR, , , , , , Intel i960, , , , , , , , , і Z8000. (Новіші випуски не будуть, ймовірно, підтримувати деяких з них.)
Зневаджувач не містить власного графічного інтерфейсу і використовує стандартний текстовий інтерфейс консолі. Були створені декілька інтерфейсів, такі як DDD, , GDBtk / Insight і «GUD mode» в Emacs.
Деякі інші інструменти відлагодження були розроблені, щоб працювати з GDB, наприклад, датчики витоку пам'яті.
Приклади команд
$ gdb prog.out | зневадження prog.out (з shell) |
---|---|
gdb> run -v | Запуск завантаженої програми з параметрами |
gdb> bt | зворотне трасування (у випадку «падіння» програми) |
gdb> info registers | дамп всіх регістрів |
gdb> disass $pc-32 $pc+32 | дизасемблювання |
Приклад використання
GNU gdb 6.5 Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and / or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i486-slackware-linux". (gdb) run Starting program: / home / sam / programming / crash Reading symbols from shared object read from target memory ... done. Loaded system supplied DSO at 0xc11000 This program will demonstrate gdb Program received signal SIGSEGV, Segmentation fault. 0x08048428 in function_2 (x = 24) at crash.c: 22 22 return * y; (gdb) edit (gdb) shell gcc crash.c-o crash-gstabs + (gdb) run The program being debugged has been started already. Start it from the beginning? (y or n) y warning: cannot close "shared object read from target memory": File in wrong format '/home/sam/programming/crash' has changed; re-reading symbols. Starting program: /home/sam/programming/crash Reading symbols from shared object read from target memory ... done. Loaded system supplied DSO at 0xa3e000 This program will demonstrate gdb 24 Program exited normally. (gdb) quit
Після того, як причина помилки сегментації знайдена, програма відредагована, помилка виправлена. Виправлена програма повторно зібрана з GCC і запущена.
Посилання
- Домашня сторінка GDB [ 1 липня 2006 у Wayback Machine.]
- Використання налагоджувача gdb в середовищі wxDev-C++ (укр.)
Це незавершена стаття про проєкт GNU. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
GNU Debugger perenosimij znevadzhuvach proektu GNU yakij pracyuye na bagatoh UNIX podibnih sistemah i vmiye provoditi znevadzhennya dlya bagatoh mov programuvannya vklyuchayuchi Ada Si C Objective C Pascal Fortran tosho Pracyuye na riznih aparatnih platformah i386 amd64 ARM PowerPC Sparc tosho i programnih platformah GNU Linux Unix Windows GNU DebuggerTip ZnevadzhuvachRozrobnik GNUPershij vipusk 1986Stabilnij vipusk 9 1 8 lyutogo 2020 4 roki tomu 2020 02 08 Operacijna sistema Unix podibni WindowsMova programuvannya C i SchemeLicenziya GNU GPLRepozitorij sourceware org git binutils gdb gitVebsajt gnu org software gdb Mediafajli u VikishovishiIstoriyaSpochatku napisanij Richardom Stollmenom v 1988 roci Z 1990 do 1993 pidtrimuvavsya pid chas jogo roboti v kompaniyi Tehnichni detaliOsoblivosti GDB proponuye shiroki zasobi dlya sposterezhennya i kontrolyu za vikonannyam komp yuternih program Koristuvach mozhe zminyuvati vnutrishni zminni program i navit viklikati funkciyi nezalezhno vid zvichajnoyi povedinki programi Procesori pidtrimuvani GDB 2003 Alpha ARM IBM System 370 ta 390 x86 ta x86 64 IA 64 Itanium Motorola 68000 MIPS PA RISC PowerPC SuperH SPARC VAX ARC AVR Intel i960 i Z8000 Novishi vipuski ne budut jmovirno pidtrimuvati deyakih z nih Znevadzhuvach ne mistit vlasnogo grafichnogo interfejsu i vikoristovuye standartnij tekstovij interfejs konsoli Buli stvoreni dekilka interfejsiv taki yak DDD GDBtk Insight i GUD mode v Emacs Deyaki inshi instrumenti vidlagodzhennya buli rozrobleni shob pracyuvati z GDB napriklad datchiki vitoku pam yati Prikladi komand gdb prog out znevadzhennya prog out z shell gdb gt run v Zapusk zavantazhenoyi programi z parametrami gdb gt bt zvorotne trasuvannya u vipadku padinnya programi gdb gt info registers damp vsih registriv gdb gt disass pc 32 pc 32 dizasemblyuvannyaPriklad vikoristannyaGNU gdb 6 5 Copyright C 2006 Free Software Foundation Inc GDB is free software covered by the GNU General Public License and you are welcome to change it and or distribute copies of it under certain conditions Type show copying to see the conditions There is absolutely no warranty for GDB Type show warranty for details This GDB was configured as i486 slackware linux gdb run Starting program home sam programming crash Reading symbols from shared object read from target memory done Loaded system supplied DSO at 0xc11000 This program will demonstrate gdb Program received signal SIGSEGV Segmentation fault 0x08048428 in function 2 x 24 at crash c 22 22 return y gdb edit gdb shell gcc crash c o crash gstabs gdb run The program being debugged has been started already Start it from the beginning y or n y warning cannot close shared object read from target memory File in wrong format home sam programming crash has changed re reading symbols Starting program home sam programming crash Reading symbols from shared object read from target memory done Loaded system supplied DSO at 0xa3e000 This program will demonstrate gdb 24 Program exited normally gdb quit Pislya togo yak prichina pomilki segmentaciyi znajdena programa vidredagovana pomilka vipravlena Vipravlena programa povtorno zibrana z GCC i zapushena PosilannyaDomashnya storinka GDB 1 lipnya 2006 u Wayback Machine Vikoristannya nalagodzhuvacha gdb v seredovishi wxDev C ukr Ce nezavershena stattya pro proyekt GNU Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi