国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

查看函數(shù)庫(kù).a函數(shù)符號(hào)信息

2019-11-09 15:03:27
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
一、概述nm命令可以列出一個(gè)函數(shù)庫(kù)文件中的符號(hào)表。它對(duì)于靜態(tài)的函數(shù)庫(kù)和共享的函數(shù)庫(kù)都起作用。對(duì)于一個(gè)給定的函數(shù)庫(kù),nm命令可以列出函數(shù)庫(kù)中定義的所有符號(hào),包括每個(gè)符號(hào)的值和類型。還可以給出在原程序中這個(gè)函數(shù)(符號(hào))是在多少行定義的,不過(guò)這必須要求編譯該函數(shù)庫(kù)的時(shí)候加“-l”選項(xiàng)。 關(guān)于符號(hào)的類型,這里我們?cè)俣嘤懻撘幌隆7?hào)的類型是以一個(gè)字母的形式顯示的,小寫字母表示這個(gè)符號(hào)是本地(local)的,而大寫字母則表示這個(gè)符號(hào)是全局的(global,externel)。一般來(lái)說(shuō),類型有一下幾種:T、D、B、U、W。各自的含義如下:T表示在代碼段中定義的一般變量符號(hào);D表示時(shí)初始化過(guò)的數(shù)據(jù)段;B表示初始化的數(shù)據(jù)段;U表示沒(méi)有定義的,在這個(gè)庫(kù)里面使用了,但是在其他庫(kù)中定義的符號(hào);W,weak的縮寫,表示如果其他函數(shù)庫(kù)中也有對(duì)這個(gè)符號(hào)的定義,則其他符號(hào)的定義可以覆蓋這個(gè)定義。 二、nm命令詳述:

用途

查看函數(shù)庫(kù).a函數(shù)符號(hào)信息

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

語(yǔ)法

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

描述

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

nm 命令把以下符號(hào)信息寫入標(biāo)準(zhǔn)輸出:庫(kù)或?qū)ο竺?如果您指定了 -A 選項(xiàng),則 nm 命令只報(bào)告與該文件有關(guān)的或者庫(kù)或者對(duì)象名。

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

符號(hào)名稱    符號(hào)類型
AGlobal absolute 符號(hào)。
aLocal absolute 符號(hào)。
BGlobal bss 符號(hào)。
bLocal bss 符號(hào)。
DGlobal data 符號(hào)。
dLocal data 符號(hào)。
f源文件名稱符號(hào)。
TGlobal text 符號(hào)。
tLocal text 符號(hào)。
U未定義符號(hào)。

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

標(biāo)志

-A每行或者顯示全路徑名稱或者顯示對(duì)象庫(kù)名。
-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通過(guò)給 WEAK 符號(hào)的編碼鍵附加一個(gè) * 來(lái)區(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ù)來(lái)顯示符號(hào)的值和大小。
-P以標(biāo)準(zhǔn)可移植輸出格式顯示信息: 

庫(kù)/對(duì)象名  名稱   類型   值   大小

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

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

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

缺省是處理 32 位對(duì)象文件(忽略 64 位對(duì)象)。 mode 也可以 OBJECT_MODE 環(huán)境變量來(lái)設(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)

該命令返回下列出口值:

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

文件

/usr/ccs/bin/nm包含 nm 命令。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 高邮市| 久治县| 霞浦县| 抚松县| 汤原县| 海晏县| 永城市| 阳信县| 白城市| 上林县| 兰州市| 焉耆| 石柱| 和龙市| 张家界市| 龙里县| 苍山县| 通山县| 荔波县| 漳平市| 武城县| 临潭县| 县级市| 北安市| 彭山县| 乡宁县| 遵义市| 长宁县| 和平区| 霍城县| 延寿县| 眉山市| 甘孜县| 津南区| 剑川县| 韶关市| 板桥市| 理塘县| 双鸭山市| 石景山区| 临湘市|