mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк 

Златоуст.Ru

 

 

      NM(1)                                                     NM(1)

      НАЗВАНИЕ
	      nm  - вывод таблицы имен объектного файла обычного фор-
              мата

      СИНТАКСИС
      nm  [-o] [-x] [-h] [-v] [-n] [-e] [-f] [-u] [-r] [-p] [-V] [-T] файл ...

      ОПИСАНИЕ
              Команда nm выдает на стандартный вывод таблицу имен для
	      каждого объектного файла, указанного в командной  стро-
              ке. Файл может быть как перемещаемым, так и  абсолютным
              об ектным файлом, или может быть архивом из таких  фай-
              лов. Для каждого элемента  таблицы  выдается  следующая
              информация:

              Name    Имя элемента таблицы.

              Value   Значение, выражаемое как смещение или адрес,  в
                      зависимости от класса хранения.

              Class   Класс хранения.

              Type    Информация о типе. Если элемент  описывает  эк-
                      земпляр структуры или об единения, то за  типом
                      будет выведено имя  структуры  или  об единения
                      (например, struct-имя). Если элемент соответст-
                      вует массиву, то размер массива будет указан за
                      типом (например, char[n][m]). Заметим, что  для
                      наличия этой информации файл должен быть отком-
                      пилирован командой cc(1) с опцией -g.

              Size    Размер в байтах, если  он  определен.  Заметим,
                      что для наличия  этой  информации  файл  должен
                      быть откомпилирован командой cc(1) с опцией -g.

              Line    Номер строки в файле с исходным текстом, в  ко-
                      торой об ект определяется, если эта  информация
                      имеет смысл. Заметим, что для наличия этой  ин-
                      формации файл должен быть откомпилирован коман-
                      дой cc(1) с опцией -g.

	      Section Для объектов  с  классом  хранения  статический
                      (static) и внешний (extern) указывается секция,
                      которой   принадлежит   об ект:  секция  команд
                      (.text),   секция   инициализированных   данных
                      (.data)  или секция неинициализированных данных
                      (.bss).

              Следующие опции определяют содержание и формат информа-
              ции, выдаваемой командой nm:

              -o   Выводить значение и размер в восьмеричном виде,  а
                   не в десятичном.

              -x   Выводить значение и размер в шестнадцатеричном ви-
                   де, а не в десятичном.

              -h   Не выводить заголовок.

	      -v   Отсортировать внешние объекты по значению.

	      -n   Отсортировать внешние объекты по алфавиту.

	      -e   Выдавать только статические и внешние объекты.

              -f   Выдавать всю информацию. Выводятся обычно подавля-
                   емые  избыточные  элементы  таблицы  имен  (.text,
                   .data, .lib, .bss).

	      -u   Выводить только неопределенные объекты.

              -r   Добавлять в начале  каждой  выводимой  строки  имя
		   объектного файла или архива.

              -p   Выводить в легко обозримом, кратком формате. Перед
		   именем  каждого объекта стоит его значение (пробе-
                   лы, если не определено) и одна из следующих  букв:
                   U  (неопределенный),  A  (абсолютный), T (входит в
                   секцию команд), D  (входит  в  секцию  данных),  S
                   (входит  в  секцию, определенную пользователем), R
                   (располагается в регистре), F (файл) или C (входит
                   в общий блок). Информация о локальных (не внешних)
                   об ектах выдается малыми буквами.

              -V   Вывести в стандартный протокол информацию о версии
                   команды nm.

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

              Опции можно использовать в произвольном порядке, вместе
              или по отдельности, и в  произвольном  месте  командной
              строки. Так, команды

                   nm  f1 -e -v

              и

                   nm  -ve f1

              работают одинаково: выдают статические и внешние об ек-
              ты файла с сортировкой внешних об ектов по значению.

      ФАЙЛЫ
              TMPDIR/*        Временные файлы.

              Обычно каталог TMPDIR -  это  /usr/tmp,  однако  данное
              соглашение можно изменить, присвоив переменной  окруже-
              ния   TMPDIR   другое   значение   [см.   tempnam( )  в
              tmpnam(3S)].

      СМ. ТАКЖЕ
              as(1), cc(1), ld(1).
              tmpnam(3S), a.out(4), ar(4) в Справочнике программиста.

      ДИАГНОСТИКА
              nm: файл: cannot open
                   Файл не удается открыть.

              nm: файл: bad magic
                   Файл не является об ектным файлом обычного  форма-
                   та.

              nm: файл: no symbols
                   Файл не содержит таблицы имен.

      СЮРПРИЗЫ
              В ситуации, когда выводятся все об екты, для сохранения
              локализации информации нужно, чтобы об екты  выводились
              в  том  порядке,  в  каком они хранятся в таблице имен.
              Следовательно, опции -v и -n следует использовать толь-
              ко вместе с опцией -e.



 

 

Бернадинер Марк Абрамович

Мое резюме

Компьютерная страничка

Ресурсы сети

Фотоальбом

 

 

 

mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк