Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
34
Добавлен:
01.05.2014
Размер:
206.19 Кб
Скачать

Утилита objdump Общие сведения

Утилита objdumpвыдает информацию об одном или нескольких объектных файлов, перечисленных в командной строке. Характер выдаваемой информации определяется набором опций. Информация, которую можно получить при помощи данной утилиты, полезна, в основном для программистов, работающих с различными программами компиляции, а не для тех, кто просто хочет компилировать исходные тексты программ и получать загружаемые или выполняемые файлы.

Формат командной строки

objdump[ -a | --archive-headers] [ -bформат_оф | --target=формат_оф] [ --debugging] [ -d | --disassemble] [ -D | --disassemble-all] [ -EB | -EL | --endian={big | little} ] [ -f | --file-headers] [ -h | --section-headers | --headers] [ -i | --info] [ -j секция | --section=секция] [ -l | --line-numbers] [ -S | --source] [ -m машина| --architecture=машина] [ -r | --reloc] [ -R | --dynamic-reloc] [ -s | --full-contents] [ --stabs] [ -t | --syms] [ -T | --dynamic-syms] [ -x | --all-headers] [ -w | --wide] [ --start-address=адрес] [ --stop-address=адрес ] [ --show-raw-insn ] [ --version] [ --help]объектный_файл...

Описание опций

объектный_файл...

Имена исследуемых объектных файлов. Если в командной строке заданы имена архивов, то objdumpпоказывает информацию о каждом элементе каждого архива.

По крайней мере одна опция (помимо -l) должна присутствовать в командной строке.

-a

--archive-header

Если среди заданных файлов есть архивы, то выдать информацию из заголовков архивов. Помимо информации, которую выдает ar -tv,objdump -aпоказывает также формат каждого объектного файла.

-bформат_оф

--target=формат_оф

Эта опция задает формат объектных файлов. Как правило, она не нужна - objdumpавтоматически распознает формат файла.

Пример:

objdump -b elf32-bigmips -h auto.o

показывает сводку информации для всех заголовков секций (-h) файлаauto.oc явно заданным типом формата. Список поддерживаемых форматов можно получить при помощи опции-i.

--debugging

Выдать отладочную информацию. Делается попытка распознать содержащуюся в файле отладочную информацию и напечатать ее, используя Си-подобный синтаксис. Реализовано распознавание только некоторых типов представления отладочной информации.

-d

--disassemble

Выдать ассемблерную мнемонику машинных инструкций объектного файла. Дизассемблируются только те секции, в которых подразумевается присутствие машинного кода.

-D

--disassemble-all

То же, что -d, но дизассемблируется содержимое всех секций, а не только тех, в которых подразумевается присутствие машинного кода.

-EB

-EL

--endian={big|little}

Эта опция задает порядок байт в слове для объектных файлов. Она влияет только на выдачу дизассемблированного кода. Может быть полезна для тех форматов, которые не содержат информации о порядке байт, например для формата S-записей.

-f

--file-header

Показать сводную информацию из общего заголовка каждого объектного файла, заданного в командной строке.

-h

--section-header

--header

Напечатать информацию заголовков секций объектного файла. Секции файла могут быть настроены на нестандартные адреса, например, при использовании опций -Ttext, -Tdataили-Tbssредактора связейld. Некоторые форматы (a.out) не содержат стартовых адресов сегментов. В таких случаях, хотяldи обеспечивает правильную настройку секций,objdump -hне может правильно выдать адреса. Вместо этогоobjdump -hпокажет обычные адреса, подразумеваемые для данной платформы.

--help

Напечатать сводку опций утилиты objdump и выйти.

-i

--info

Показать список архитектур и форматов, допустимых в качестве аргументов опций -b, -m.

-j секция

--section=секция

Распечатать запрошенную информацию только для указанной секции.

-l

--line-numbers

Помечать выдаваемый код или информацию о перемещаемых символах именем файла и номерами строк исходного файла (используя имеющуюся в файле отладочную информацию).

-m машина

--architecture=машина

Эта опция задает архитектуру, подразумеваемую при дизассемблировании объектных файлов, которые не содержат информации об архитектуре, например, S-записей. Список поддерживаемых архитектур можно получить при помощи опции -i.

-r

--reloc

Вывести перемещаемые элементы файла. При использовании совместно с -dили-Dвыдача данной опции перемежается с выдачей дизассемблированного кода.

-R

--dynamic-reloc

Вывести информацию о динамически перемещаемых элементах файла. Это имеет смысл только для динамических объектов, например, некоторых типов разделяемых библиотек.

-s

--full-contents

Показывать полное содержимое всех запрошенных секций.

-S

--source

Показывать исходный код, перемежающийся с дизассемблированным. Использование этой опции подразумевает включение -d.

--show-raw-insn

При дизассемблировании печатать инструкции и в шестнадцатеричном, и в символьном формате. Эта опция правильно обрабатывается не для всех форматов объектных файлов.

--stabs

Показать полное содержимое всех запрошенных секций. Показать содержимое секций .stab, .stab.index, .stab.exclдляelf-формата. Это полезно только для систем (Solaris 2.0), в которых отладочные элементы.stabтаблицы символов помещаются в секцииelf. В большинстве форматов файлов отладочные элементы таблицы символов перемежаются с загружаемыми символами и видны в выдаче, порождаемой опцией--syms.

--start-address=адрес

Начать выдачу данных с указанного адреса. Это относится к выводу, соответствующему опциям-d, -r, -s.

--stop-address=адрес

Закончить выдачу данных на указанном адресе. Это относится к выводу, соответствующему опциям-d, -r, -s.

-t

--syms

Напечатать элементы таблицы символов. Выдается информация, эквивалентная выдаче утилиты nm.

-T

--dynamic-syms

Напечатать динамические элементы таблицы символов файла. Это имеет смысл только для динамических объектов, например, для некоторых типов разделяемых библиотек. Использование этой опции эквивалентно вызову утилиты nmс опцией-D(--dynamic).

--version

Напечатать номер версии утилиты objdump и выйти.

-x

--all-header

Показать всю имеющуюся заголовочную информацию, включая таблицу символов и данные о настройке символов. Опция -xэквивалентна сочетанию опций-a -f -h -r -t.

-w

--wide

Отформатировать некоторые строки для устройств вывода с шириной строки более 80 символов.

Соседние файлы в папке Еще материалы