Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
1 / 1 / 0
Регистрация: 14.02.2021
Сообщений: 173
1

Как пользоваться отладчиком GDB?

28.02.2021, 16:37. Показов 1344. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Решил научиться пользоваться GDB, но не до конца разобрался, хотелось бы выяснить следующие нюансы:
1) Отладка происходит через терминал?
2) Как на Linux в VS Code установить отладчик GDB?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.02.2021, 16:37
Ответы с готовыми решениями:

Как пользоваться отладчиком под linux
Не когда не работал с linux. Вот пришлось писать программы под linux.Все программы которые я пишу...

Как запустить программу под отладчиком gdb
Уважаемые друзья! В качестве упражнения разбираюсь с программой из учебника и пытаюсь запустить её...

CodeLite ошибка failed to locate gdb! at 'gdb'
Установил на двух компьютерах CodeLite. На десятке и на семерке. Выдает окошко failed to locate...

Как пользоваться отладчиком?
Вот код. В книжке написано: "поставьте точку останова Отладчика на оператор j=i и в цикле работы...

11
342 / 197 / 52
Регистрация: 18.10.2017
Сообщений: 1,938
28.02.2021, 20:54 2
Через терминал, но это будет очень тяжело и я и не пытался.
Всё, что Qt Creator делает показывает на экране, надо будет делать вручную и смотреть в терминале.
Проще через printf(), но, если не полениться изучить man gdb", то это, конечно, поможет, но я этого не делал.
0
1 / 1 / 0
Регистрация: 14.02.2021
Сообщений: 173
01.03.2021, 08:29  [ТС] 3
Через printf() выводить в терминал?
0
590 / 413 / 135
Регистрация: 02.10.2008
Сообщений: 1,745
Записей в блоге: 1
01.03.2021, 09:08 4
Есть GUI для gdb под названием ddd но какая-то кривая - мне не зашло. Легче выучить с десяток команд и пользоваться gdb IMHO
PS не забудь компилировать с ключом -g -иначе будешь лицезреть ассемблер вместо исходника...

Добавлено через 8 минут
А вот ещё, у gdb есть параметр -tui - встроенная curses оболочка - но тоже так себе
0
200 / 236 / 33
Регистрация: 29.03.2019
Сообщений: 667
01.03.2021, 17:16 5
Кто вспомнит древнюю книгу по gdb (была в переводе), киньте название. На рутрекере есть, но не та.
0
13 / 13 / 0
Регистрация: 21.10.2011
Сообщений: 58
01.03.2021, 19:40 6
Используйте cgdb, консольная обертка над gdb. Это лучшее, что есть
0
1 / 1 / 0
Регистрация: 14.02.2021
Сообщений: 173
02.03.2021, 10:26  [ТС] 7
Какой командой указать путь к файлу для отладки? Не могу найти
0
590 / 413 / 135
Регистрация: 02.10.2008
Сообщений: 1,745
Записей в блоге: 1
02.03.2021, 10:39 8
Можно из командной строки:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
faust@archlinux ~/П/C> gdb "./РАзная всячина/a.out"
GNU gdb (GDB) 10.1
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.                                                                                                                                                  
There is NO WARRANTY, to the extent permitted by law.                                                                                                                                                               
Type "show copying" and "show warranty" for details.                                                                                                                                                                
This GDB was configured as "x86_64-pc-linux-gnu".                                                                                                                                                                   
Type "show configuration" for configuration details.                                                                                                                                                                
For bug reporting instructions, please see:                                                                                                                                                                         
<https://www.gnu.org/software/gdb/bugs/>.                                                                                                                                                                           
Find the GDB manual and other documentation resources online at:                                                                                                                                                    
    <http://www.gnu.org/software/gdb/documentation/>.                                                                                                                                                               
                                                                                                                                                                                                                    
For help, type "help".                                                                                                                                                                                              
Type "apropos word" to search for commands related to "word"...                                                                                                                                                     
Reading symbols from ./РАзная всячина/a.out...                                                                                                                                                                      
(gdb) l                                                                                                                                                                                                             
1       #include<stdio.h>                                                                                                                                                                                           
2       int main(void)                                                                                                                                                                                              
3       {
4           unsigned short      a,b;
5
6           a = 40000,b=30000;    
7           printf("a = %d, b = %d\n",a,b);
8           a+=b;
9           b=a-b;
10          a-=b;
(gdb) q
faust@archlinux ~/П/C>
Можно уже внутри gdb
Код
faust@archlinux ~/П/C/РАзная всячина> gdb
GNU gdb (GDB) 10.1
Copyright (C) 2020 Free Software Foundation, Inc.                                                                                                                                                                   
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".
(gdb) file ./a.out
Reading symbols from ./a.out...
(gdb) l
1       #include<stdio.h>
2       int main(void)
3       {
4           unsigned short      a,b;
5
6           a = 40000,b=30000;    
7           printf("a = %d, b = %d\n",a,b);
8           a+=b;
9           b=a-b;
10          a-=b;
(gdb) q
faust@archlinux ~/П/C/РАзная всячина>
командой file <путь к файлу>

В гугле инфы море : https://eax.me/gdb/ или https://coderlessons.com/tutor... ukovodstvo
0
1 / 1 / 0
Регистрация: 14.02.2021
Сообщений: 173
02.03.2021, 11:32  [ТС] 9
В чем может быть проблема, файл есть, а отладчик его не видит?

Как пользоваться отладчиком GDB?
0
590 / 413 / 135
Регистрация: 02.10.2008
Сообщений: 1,745
Записей в блоге: 1
02.03.2021, 13:51 10
А вы его на диск сохранили
0
1 / 1 / 0
Регистрация: 14.02.2021
Сообщений: 173
02.03.2021, 13:54  [ТС] 11
А куда нужно сохранять?
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
02.03.2021, 13:58 12
Цитата Сообщение от Noob_03 Посмотреть сообщение
А куда нужно сохранять?
Куда хочешь. Тебе компилятор явно сказал, что файл не может найти, который ты хочешь скомпилировать. Дай ему правильный путь. gdb тут не при чем.
0
02.03.2021, 13:58
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.03.2021, 13:58
Помогаю со студенческими работами здесь

Как пользоваться отладчиком
Скажите, пожалуйста, как пользоватсья отладчиком в Паскале? На сколько я понял задание начальной...

Как пользоваться отладчиком
Отладка программ Что такое отладка? Какие существуют виды ошибок? Пошаговый прогон: какая...

Как пользоваться отладчиком
Тема находится в разделе &quot;Visual Studio&quot;:...

Как пользоваться отладчиком?
Дайте ссылку на хороший материал или литературу

Как пользоваться отладчиком в Lazarus?
Вобщеем, уже неделю мучаюсь со своим проектом, никак не могу избавиться от навязчивой ошибки...

Как пользоваться отладчиком bochs
.386p rmcode segment para public 'CODE' use16 assume cs:rmcode,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru