Вопросы по теме 'dwarf'

Откуда GDB берет строки кода?
Когда я компилирую программу с помощью -g и получаю дамп ядра, я могу использовать gdb для чтения исполняемого файла и дампа ядра для отладки ситуации, в которой программа столкнулась до того, как она потерпела крах. Одной из функций, предлагаемых...
1248 просмотров
schedule 22.11.2021

Как работает директива .cfi в коде сборки?
[код сборки] main: .LFB0: .cfi_startproc pushl %ebp .cfi_def_cfa_offset 8 .cfi_offset 5, -8 movl %esp, %ebp .cfi_def_cfa_register 5 andl $-16, %esp subl $32, %esp movl $5, 20(%esp) movl $3,...
2000 просмотров
schedule 14.11.2021

Инструменты отладки на основе графического интерфейса пользователя с использованием информации DWARF из файла ELF
Я ищу инструмент отладки на основе графического интерфейса, который считывает информацию DWARF из файла ELF и сопоставляет инструкции по сборке с номером строки исходного кода. Существуют ли такие инструменты, дайте мне знать?
689 просмотров
schedule 06.10.2021

Как добавить символы отладки для GCC 8.1.0?
Я обновил используемую мной версию GCC с 4.2.1 до 8.1.0 . (Это единственное , что я изменил) Проблема в том, что после того, как я это сделал, символы отладки исчезли. Я использую GDB только с опцией " -g ". В gcc v8.1.0 символы...
234 просмотров
schedule 21.10.2021

Как найти смещение функции с помощью gdb?
У меня есть общий объектный файл с информацией DWARF. Я хочу найти смещение функции. Моя трассировка стека имеет формат mangledFuncName + 0x123 . Я хочу найти строку кода для соответствующего кадра. В идеале я хотел бы построить какое-то...
699 просмотров
schedule 18.11.2021

Изменить формат DWARF elf в компиляторе IAR ARM V8
В нашей разработке мы перешли с IAR ARM V7.40 на IAR ARM V8.40. Мы используем пакет python pyelftools для постобработки отладочной информации. К сожалению, сейчас это, похоже, не работает, поскольку компилятор V8, похоже, использует синтаксис...
84 просмотров
schedule 28.09.2021

Пример сборки Dwarf hello world или туториал?
Я пишу понятный человеку язык программирования на уровне ассемблера в nasm. Я заметил, что отладка Dwarf является важным компонентом его разработки. Чтобы позже он стал самостоятельным хостингом, он должен будет не только скомпилироваться в ELF,...
1205 просмотров
schedule 15.03.2022

Есть ли способ изменить вывод формата DWARF в файле .elf относительно внешних переменных?
У нас есть стороннее программное обеспечение, которое извлекает информацию из сгенерированного .elf о наших глобальных переменных, которые используют отладочную информацию DWARF для ее поиска. Раньше мы использовали компилятор IAR, который создавал...
119 просмотров
schedule 06.04.2022

в Java: программное определение адресов переменных C/C++ с учетом исполняемого файла COFF/ELF/DWARF
Вот такая ситуация, с которой я сталкиваюсь время от времени: Для встроенной системы, которая не использует виртуальную адресацию, у меня есть исполняемый файл, скомпилированный из кода C или C++ с включенной отладочной информацией. Обычно это...
1100 просмотров
schedule 27.04.2022

Почему в моих основных дампах отсутствует примечание NT_FILE?
Я установил «ulimit -c неограниченно» в своей системе Fedora, поэтому segfaults генерируют файлы дампа ядра. Это работает. Я видел примечание NT_FILE, упомянутое по этим URL-адресам: формат основного файла ELF Анатомия основного файла ELF...
850 просмотров
schedule 23.04.2022

dwarfdump - Отладочная сборка не имеет символов?
Я построил свой проект для iphoneos и iphonesimulator, как для отладки, так и для выпуска. Когда я запускаю dwarfdump для отладочных сборок, отчеты пусты. Когда я запускаю его на DSYM сборки выпуска, он сообщает обо всех символах. См. вывод ниже...
1127 просмотров
schedule 17.05.2022

Ошибка Dwarf: неправильная версия в заголовке модуля компиляции (равно 4, должно быть 2)
Общий объект был построен на RedHat Linux, и хотя весь код был скомпилирован с помощью отладки, отладчик (gdb) отказался загружать символы и выдал ошибку, как в: ... GNU gdb Fedora (6.8-37.el5) ... This GDB was configured as...
30278 просмотров
schedule 22.06.2022

Как можно рандомизировать адреса глобальных переменных, если они жестко запрограммированы внутри ELF?
Я читал в нескольких местах, что ASLR должен загружать раздел .data по случайным адресам каждый раз при запуске программы, что означает, что адреса глобальных переменных должны быть разными. Однако, если у меня есть следующий код: int...
926 просмотров
schedule 19.06.2022

недопустимый DWARF, сгенерированный компилятором
предупреждение: недопустимый DWARF, сгенерированный компилятором: DIE 0x000629bb имеет несколько атрибутов AT_decl_line в '/Code/test/Mac1.7to1.8Test/build/Mac1.7to1.8Test.build/Release/Mac1.7to1.8Test.build/Objects-...
723 просмотров
schedule 11.07.2022

Предложения по написанию инструмента преобразования формата отладки
Я собираюсь написать инструмент, предназначенный для преобразования символов отладки одного формата в другой формат, совместимый для использования в GDB. Это кажется утомительным и потенциально сложным проектом, поэтому я не совсем уверен, как с ним...
1386 просмотров
schedule 04.08.2022

Нет отладочной информации/исходного кода с LLDB на OSX
Я не могу увидеть исходный код в lldb, несмотря на то, что пытался по совету LLDB не отображать исходный код код Я свел это к простой программе на C++17, которая скомпилирована с помощью следующей команды. Я работаю на OSX с clang 7.0.1,...
333 просмотров
schedule 10.08.2022

Эффективный способ разбора DWARF
Я пытаюсь создать отладчик, который позволяет мне устанавливать точки останова в функциях или строках кода. Необходимая отладочная информация должна быть извлечена из раздела DWARF файла elf. Я могу извлечь эти данные. В проекте, который я хочу...
430 просмотров
schedule 31.08.2022

Переместите файлы в раздел .debug_line
Можно ли изменить пути к файлам в разделе .debug_line в файле ELF? Я пытаюсь настроить Debug Fission , пока у меня есть my_library.so (в режиме выпуска, без отладочной информации) и my_library.so.dbg (с отладочными символами). Я связал их с...
38 просмотров
schedule 16.09.2022

GCC, повторяющиеся определения типов и DWARF
В течение последних нескольких лет GCC допускал дублирование определений типов, если они совместимы друг с другом. Проблема, с которой я столкнулся, связана с расширениями отладки DWARF: кажется, что GCC (v4.8) помечает повторяющиеся определения...
337 просмотров
schedule 30.09.2022

сопоставить адреса памяти с номерами строк, используя информацию DWARF
У меня есть приложение, которое отслеживает выполнение программы через память. Я пытался использовать readelf --debug-dump=decodedline для получения информации об адресе памяти / строке #, но адреса памяти, которые я вижу, не часто совпадают с...
1659 просмотров
schedule 18.04.2023