Публикации по теме 'gdb'
Отладка случайного поведения программы
Я смотрел на странный coredump на днях. Из ядра программа пыталась записать в виртуальный адрес 0x6 и вылетала на memcpy .
Там кусок кода выглядит так
if (a == 1) { do_foo(); } else { do_bar(); }
И из дампа ядра a действительно 1 . Однако выполнение взяло ветвь else и разбилось на memcpy в do_bar .
Дизассемблировал код в gdb с помощью disassemble /s . Это намного лучше, чем просто disassemble или даже disassemble /m . С оптимизацией времени компоновки..
Вопросы по теме 'gdb'
x86 перейти к адресу
В качестве назначения для класса безопасности я пытаюсь использовать __asm__("jmp 0xbffff994"); в своем коде, но когда я разбираю вещи в gdb, инструкция меняется на jmp 0xc8047e2a . Любая идея, почему и как я могу перейти к определенному адресу?
19518 просмотров
schedule
14.01.2024
Заставить GDB отображать все многострочные операторы
GDB, по крайней мере, в том виде, в каком он настроен по умолчанию на моем компьютере с Ubuntu 9.04, плохо обрабатывает многострочные операторы. Когда я просматриваю код, GDB отображает только последнюю строку текущего оператора, даже если этот...
1425 просмотров
schedule
29.10.2022
В чем причина «паники: освободиться от неправильного пула во время глобального уничтожения». в Term::ReadLine::Gnu?
в https://rt.cpan.org/Ticket/Display.html?id=37194#txn-641389 Я повторно открыл ошибку, касающуюся сбоя Perl в сочетании с привязками libreadline XS. Я приложил необходимую отладочную информацию, но до сих пор не было подтверждения от...
2079 просмотров
schedule
30.01.2024
Как изучить расширенное использование отладчика C?
Как изучить передовые методы отладки?
Я программист на C / Unix и полагаюсь на хороший отладчик C. Я знаю Sun ^ WOracle mdb на Solaris, GNU gdb на Linux. Я чувствую себя комфортно, устанавливая точки останова, исследуя структуры памяти и тому...
446 просмотров
schedule
04.01.2024
Проблема с отладчиком Eclipse CDT, v. .metadata не существует
Я пытаюсь использовать отладчик gdb/mi в Eclipse CDT версии 6.02. Во время отладки я могу легко пройтись по программе, пока не дойду до следующего фрагмента кода.
ENUM_START_TYPE My_Class::some_function( const char * c, const char * e)
{...
472 просмотров
schedule
03.09.2022
Как перечислить методы класса в gdb?
Я искал это и проверял руководство по gdb, но, похоже, не нашел ответа на то, что я пытаюсь сделать.
Есть ли способ заставить gdb распечатать список всех методов для данного типа класса? Кажется, что команда печати показывает только элементы...
15689 просмотров
schedule
16.11.2022
GDB Break, если кадр находится в обратной трассировке
Я хочу установить условие для точки останова gdb, чтобы прерываться только в том случае, если в трассировке появляется определенное имя функции. Как лучше всего это сделать?
1983 просмотров
schedule
21.11.2023
Как напечатать строку, на которую указывает указатель, при отладке с помощью GDB?
Как проверить строку, на которую указывает указатель, при пошаговом выполнении программы с использованием GDB?
Я вижу, что указатель указывает на 0x82c6e10 . Я знаю, что это строка. Как распечатать?
Использование printf("%s\n", 0x82c6e10)...
28917 просмотров
schedule
15.06.2024
GDB - Доступ к действительным и мнимым частям комплексного числа
При отладке программы, которая использует (либо C, либо C++), gdb отображает комплексные числа как _M_value = xxx + yyy*I (с типом complex double ).
Во время отладки мне нужно напечатать это число, умноженное на коэффициент.
Следующее не...
1501 просмотров
schedule
12.10.2023
Emacs + GDB + SCons + пошаговая отладка
При компиляции проекта через make-файл с помощью команды компиляции Emacs, когда gdb запускается на результирующем двоичном файле, приложение может выполняться пошагово. Однако при сборке с использованием большого проекта с SCons попытка пошагового...
1035 просмотров
schedule
08.07.2022
Как в GDB разрешить повторяющиеся символы
У меня есть глобальная переменная, имя которой содержит несколько символов, и я хочу напечатать их все. Пример:
(gdb) info var g_reallocCount
All variables matching regular expression "g_reallocCount":
File sv.c:
long int g_reallocCount;
long...
1038 просмотров
schedule
05.06.2024
Завершить программу, нажав CTRL+C в GDB
Моя программа решила остановить свое выполнение, нажав CTRL + C в командном окне. К настоящему времени у меня есть критическая ошибка прямо на этапе остановки, поэтому я хочу выполнить отладку с помощью gdb.
Проблема в том, что gdb...
16433 просмотров
schedule
31.10.2022
различное поведение между отладчиком gdb и lldb
Я загружаю массив друзей и передаю его своему uitableview, все работает, но когда я помещаю точку останова в методе:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath
с...
2575 просмотров
schedule
19.01.2024
GDB сообщает о неправильном адресе параметра в конструкторе объекта С++
Я испытываю странное поведение, когда GDB передает строку в качестве параметра конструктору. Код работает нормально, но когда я выполняю отладчик, GDB, кажется, думает, что мой параметр находится по другому адресу, чем он есть на самом деле....
1810 просмотров
schedule
03.11.2022
Отслеживание вызовов функций в C++ с помощью gdb
У меня есть система, разработанная на C++ на платформе Linux. Я занимаюсь отладкой этой системы. Я хочу найти полную последовательность вызовов функции. Предположим, что функции вызываются в следующей последовательности
function_1 ->...
3085 просмотров
schedule
07.05.2024
SIGTRAP, несмотря на отсутствие установленных точек останова; скрытая аппаратная точка останова?
Я отлаживаю эту программу для встроенной системы STM32. В одной из функций мои программы продолжают попадать в какую-то точку останова:
SIGTRAP, ловушка трассировки / точки останова
Однако в GDB, когда я делаю info breakpoints , я...
19187 просмотров
schedule
14.10.2022
Qt: процесс gdb неожиданно завершился (код 127)
Какие проблемы вызывают это окно сообщения с этим сообщением: 'Процесс gdb неожиданно завершился (код 127)' после нажатия F5 или Начать отладку? (Я запускаю QtCreator не как суперпользователь)
когда я запускаю QtCreator от имени...
4334 просмотров
schedule
06.06.2024
gdb теряет информацию о номере строки (в модулях ядра) после точки останова
Я подключаю GDB к ядру виртуальной машины и пытаюсь отладить модуль ядра. Я могу подключиться к виртуальной машине. У меня есть символьная информация для кода ядра, и я могу легко выполнить код ядра.
Когда я добавляю файл символов для своего...
582 просмотров
schedule
15.11.2023
Печать значения QUrl в gdb
Я хочу посмотреть значение типа QUrl. QUrl имеет метод toString, который возвращает QString. Использование чего-то подобного должно было дать желаемые результаты.
printq4string urlvar.toString()
Как вывести значение QString в gdb?
468 просмотров
schedule
23.05.2024
как увидеть пошаговое выполнение каждой строки расширения макроса с помощью gdb
у меня есть макрос, определение которого занимает около 50 строк и содержит множество операторов «если еще». Этот макрос def'n появляется в файле .h. Я запускаю «gdb в режиме TUI», но когда выполнение достигает этого макроса, окно кода становится...
8549 просмотров
schedule
24.11.2023