亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學(xué)習(xí)啦>學(xué)習(xí)電腦>操作系統(tǒng)>Linux教程>

      nm命令的使用教程

      時(shí)間: 春健736 分享

        nm 命令顯示關(guān)于指定 File 中符號(hào)的信息,文件可以是對(duì)象文件、可執(zhí)行文件或?qū)ο笪募?。下面跟著學(xué)習(xí)啦小編一起來了解一下nm 命令怎么用吧。

        nm 命令用法詳解

        用途

        顯示有關(guān)對(duì)象文件、可執(zhí)行文件以及對(duì)象文件庫里的符號(hào)信息。

        語法

        nm [ -A ] [ -C ] [ -X {32|64|32_64|d64| any}] [ -f ] [ -h ] [ -l ] [ -p ] [ -r ] [ -T ] [ -v ] [ -B | -P] [ -e | -g | -u ] [ -d | -o | -x | -tFormat ] File ...

        描述

        nm 命令顯示有關(guān)指定 File 中符號(hào)的信息,文件可以是對(duì)象文件、可執(zhí)行文件或?qū)ο笪募臁?如果文件沒有包含符號(hào)信息,nm 命令報(bào)告該情況,但不將它解釋為出錯(cuò)條件。nm 命令缺省情況下報(bào)告十進(jìn)制符號(hào)表示法下的數(shù)字值。

        nm 命令將以下符號(hào)信息寫到標(biāo)準(zhǔn)輸出:

        庫或?qū)ο竺?/p>

        如果您指定了 -A 選項(xiàng),那么 nm 命令 只報(bào)告與該文件有關(guān)的或者庫或者對(duì)象名。

        符號(hào)名稱

        符號(hào)類型

        nm 命令使用以下符號(hào)(用同樣的字符表示弱符號(hào)作為全局符號(hào))之一來表示文件符號(hào)類型:

      項(xiàng)目 描述
      A Global absolute 符號(hào)。
      a Local absolute 符號(hào)。
      B Global bss 符號(hào)。
      b Local bss 符號(hào)。
      D Global data 符號(hào)。
      d Local data 符號(hào)。
      f Source file name 符號(hào)。
      L Global thread-local 符號(hào) (TLS)。
      l Static thread-local 符號(hào) (TLS)。
      T Global text 符號(hào)。
      t Local text 符號(hào)。
      U Undefined 符號(hào)。

        值

        大小

        如果可應(yīng)用,nm 命令報(bào)告與符號(hào)有關(guān)的大小。

        標(biāo)志

      項(xiàng)目 描述
      -A 每行或者顯示完整路徑名或者顯示對(duì)象庫名。
      -B 在 Berkeley 軟件分發(fā) (BSD) 格式中顯示輸出:
      值   類型   名稱
      -C 限制解碼 (demangle) C++ 名稱。缺省是解碼所有 C++ 符號(hào)名。
      注: C++ 對(duì)象文件中的符號(hào)在被使用前它們的名稱已經(jīng)被解碼了。
      -d 用十進(jìn)制顯示符號(hào)的值和大小。這是缺省值。
      -e 只顯示靜態(tài)的和外部的(全局)符號(hào)。
      -f 顯示完整的輸出,包括冗余的 .text、.data 以及 .bss 符號(hào),這些在通常都是被限制的。
      -g 只顯示外部的(全局)符號(hào)。
      -h 限制輸出頭數(shù)據(jù)的顯示。
      -l 通過給 WEAK 符號(hào)的編碼鍵附加一個(gè) * 來區(qū)分 WEAK 和 GLOBAL 符號(hào)。 如果和 -P 選項(xiàng)一起使用,WEAK 符號(hào)的符號(hào)類型顯示如下:
      V
      Weak Data 符號(hào)
      W
      Weak Text 符號(hào)
      w
      Weak 未定義符號(hào)
      Z
      Weak bss 符號(hào)
      -o 用八進(jìn)制而不是十進(jìn)制數(shù)來顯示符號(hào)的值和大小。
      -P 以標(biāo)準(zhǔn)可移植輸出格式顯示信息:
      庫/對(duì)象名  名稱   類型   值   大小

      該格式以十六進(jìn)制符號(hào)表示法顯示數(shù)字值,除非您用 -t、-d 或 -o 標(biāo)志指定不同的格式。

      如果您指定了 -A 標(biāo)志 -P 標(biāo)志只顯示庫/對(duì)象名字段。同樣,-P 標(biāo)志只顯示大小適用的符號(hào)大小字段。

      -p 不排序。輸出按符號(hào)表順序顯示。
      -r 倒序排序。
      -t Format 顯示指定格式下的數(shù)字值,其中 Format 參數(shù)是以下符號(hào)表示法之一:
      d
      十進(jìn)制符號(hào)表示法。這是 nm 命令的缺省格式。
      o
      八進(jìn)制符號(hào)表示法。
      x
      十六進(jìn)制符號(hào)表示法。
      -T 將可能會(huì)溢出它的列的每個(gè)名稱截短,使顯示的名稱的最后一個(gè)字符是星號(hào)。 缺省情況下,nm 顯示列出的符號(hào)的全名,并且一個(gè)比為其設(shè)置的列的寬度長的名稱會(huì)引起名稱后的每個(gè)列無法對(duì)齊。
      -u 只顯示未定義符號(hào)。
      -v 按值而不是按字母表順序排序輸出。
      -x 用十六進(jìn)制而不是十進(jìn)制數(shù)來顯示符號(hào)的值和大小。
      -X mode 指定 nm 應(yīng)該檢查的對(duì)象文件的類型。 mode 必須是下列之一:
      32
      只處理 32 位對(duì)象文件
      64
      只處理 64 位對(duì)象文件
      32_64
      處理 32 位和 64 位對(duì)象文件
      d64
      檢驗(yàn)中止 64 位 XCOFF 文件(magic number == U803XTOCMAGIC)。
      any
      處理所有支持的對(duì)象文件。

      缺省值為處理 32 位對(duì)象文件(忽略 64 位對(duì)象)。mode 也可用 OBJECT_MODE 環(huán)境變量來設(shè)置。例如,OBJECT_MODE=64 使nm 處理任何 64 位對(duì)象并且忽略 32 位對(duì)象。-X 標(biāo)志覆蓋了 OBJECT_MODE 變量。

        注: nm 命令支持 —(雙連字符)標(biāo)志。如果文件名會(huì)被曲解為一個(gè)選項(xiàng),該標(biāo)志區(qū)別于 File 操作數(shù)。 例如,要指定文件名以連字符開始,請(qǐng)使用 — 標(biāo)志。

        退出狀態(tài)

        此命令返回以下退出值:

      項(xiàng)目 描述
      0 成功完成。
      >0 發(fā)生錯(cuò)誤。

        示例

        要列出 a.out 對(duì)象文件的靜態(tài)和外部符號(hào),請(qǐng)輸入:

        nm -e a.out

        要以十六進(jìn)制顯示符號(hào)大小和值并且按值排序符號(hào),請(qǐng)輸入:

        nm -xv a.out

        要顯示 libc.a 中所有 64 位對(duì)象符號(hào),忽略所有 32 位對(duì)象:

        nm -X64 /usr/lib/libc.a

        用途

        顯示有關(guān)對(duì)象文件、可執(zhí)行文件以及對(duì)象文件庫里的符號(hào)信息。

        語法

        nm [ -A ] [ -C ] [ -X {32|64|32_64|d64| any}] [ -f ] [ -h ] [ -l ] [ -p ] [ -r ] [ -T ] [ -v ] [ -B | -P] [ -e | -g | -u ] [ -d | -o | -x | -tFormat ] File ...

        描述

        nm 命令顯示有關(guān)指定 File 中符號(hào)的信息,文件可以是對(duì)象文件、可執(zhí)行文件或?qū)ο笪募臁?如果文件沒有包含符號(hào)信息,nm 命令報(bào)告該情況,但不將它解釋為出錯(cuò)條件。nm 命令缺省情況下報(bào)告十進(jìn)制符號(hào)表示法下的數(shù)字值。

        nm 命令將以下符號(hào)信息寫到標(biāo)準(zhǔn)輸出:

        庫或?qū)ο竺?/p>

        如果您指定了 -A 選項(xiàng),那么 nm 命令 只報(bào)告與該文件有關(guān)的或者庫或者對(duì)象名。

        符號(hào)名稱

        符號(hào)類型

        nm 命令使用以下符號(hào)(用同樣的字符表示弱符號(hào)作為全局符號(hào))之一來表示文件符號(hào)類型:

      項(xiàng)目 描述
      A Global absolute 符號(hào)。
      a Local absolute 符號(hào)。
      B Global bss 符號(hào)。
      b Local bss 符號(hào)。
      D Global data 符號(hào)。
      d Local data 符號(hào)。
      f Source file name 符號(hào)。
      L Global thread-local 符號(hào) (TLS)。
      l Static thread-local 符號(hào) (TLS)。
      T Global text 符號(hào)。
      t Local text 符號(hào)。
      U Undefined 符號(hào)。

        值

        大小

        如果可應(yīng)用,nm 命令報(bào)告與符號(hào)有關(guān)的大小。

        標(biāo)志

      項(xiàng)目 描述
      -A 每行或者顯示完整路徑名或者顯示對(duì)象庫名。
      -B 在 Berkeley 軟件分發(fā) (BSD) 格式中顯示輸出:
      值   類型   名稱
      -C 限制解碼 (demangle) C++ 名稱。缺省是解碼所有 C++ 符號(hào)名。
      注: C++ 對(duì)象文件中的符號(hào)在被使用前它們的名稱已經(jīng)被解碼了。
      -d 用十進(jìn)制顯示符號(hào)的值和大小。這是缺省值。
      -e 只顯示靜態(tài)的和外部的(全局)符號(hào)。
      -f 顯示完整的輸出,包括冗余的 .text、.data 以及 .bss 符號(hào),這些在通常都是被限制的。
      -g 只顯示外部的(全局)符號(hào)。
      -h 限制輸出頭數(shù)據(jù)的顯示。
      -l 通過給 WEAK 符號(hào)的編碼鍵附加一個(gè) * 來區(qū)分 WEAK 和 GLOBAL 符號(hào)。 如果和 -P 選項(xiàng)一起使用,WEAK 符號(hào)的符號(hào)類型顯示如下:
      V
      Weak Data 符號(hào)
      W
      Weak Text 符號(hào)
      w
      Weak 未定義符號(hào)
      Z
      Weak bss 符號(hào)
      -o 用八進(jìn)制而不是十進(jìn)制數(shù)來顯示符號(hào)的值和大小。
      -P 以標(biāo)準(zhǔn)可移植輸出格式顯示信息:
      庫/對(duì)象名  名稱   類型   值   大小

      該格式以十六進(jìn)制符號(hào)表示法顯示數(shù)字值,除非您用 -t-d 或 -o 標(biāo)志指定不同的格式。

      如果您指定了 -A 標(biāo)志 -P 標(biāo)志只顯示庫/對(duì)象名字段。同樣,-P 標(biāo)志只顯示大小適用的符號(hào)大小字段。

      -p 不排序。輸出按符號(hào)表順序顯示。
      -r 倒序排序。
      -t Format 顯示指定格式下的數(shù)字值,其中 Format 參數(shù)是以下符號(hào)表示法之一:
      d
      十進(jìn)制符號(hào)表示法。這是 nm 命令的缺省格式。
      o
      八進(jìn)制符號(hào)表示法。
      x
      十六進(jìn)制符號(hào)表示法。
      -T 將可能會(huì)溢出它的列的每個(gè)名稱截短,使顯示的名稱的最后一個(gè)字符是星號(hào)。 缺省情況下,nm 顯示列出的符號(hào)的全名,并且一個(gè)比為其設(shè)置的列的寬度長的名稱會(huì)引起名稱后的每個(gè)列無法對(duì)齊。
      -u 只顯示未定義符號(hào)。
      -v 按值而不是按字母表順序排序輸出。
      -x 用十六進(jìn)制而不是十進(jìn)制數(shù)來顯示符號(hào)的值和大小。
      -X mode 指定 nm 應(yīng)該檢查的對(duì)象文件的類型。 mode 必須是下列之一:
      32
      只處理 32 位對(duì)象文件
      64
      只處理 64 位對(duì)象文件
      32_64
      處理 32 位和 64 位對(duì)象文件
      d64
      檢驗(yàn)中止 64 位 XCOFF 文件(magic number == U803XTOCMAGIC)。
      any
      處理所有支持的對(duì)象文件。

      缺省值為處理 32 位對(duì)象文件(忽略 64 位對(duì)象)。mode 也可用 OBJECT_MODE 環(huán)境變量來設(shè)置。例如,OBJECT_MODE=64 使nm 處理任何 64 位對(duì)象并且忽略 32 位對(duì)象。-X 標(biāo)志覆蓋了 OBJECT_MODE 變量。

        注: nm 命令支持 —(雙連字符)標(biāo)志。如果文件名會(huì)被曲解為一個(gè)選項(xiàng),該標(biāo)志區(qū)別于 File 操作數(shù)。 例如,要指定文件名以連字符開始,請(qǐng)使用 — 標(biāo)志。

        退出狀態(tài)

        此命令返回以下退出值:

      項(xiàng)目 描述
      0 成功完成。
      >0 發(fā)生錯(cuò)誤。

        示例

        要列出 a.out 對(duì)象文件的靜態(tài)和外部符號(hào),請(qǐng)輸入:

        nm -e a.out

        要以十六進(jìn)制顯示符號(hào)大小和值并且按值排序符號(hào),請(qǐng)輸入:

        nm -xv a.out

        要顯示 libc.a 中所有 64 位對(duì)象符號(hào),忽略所有 32 位對(duì)象:

        nm -X64 /usr/lib/libc.a

      647043