#### 简介

列出object文件里的符号。符号包括值和类型。

#### 语法

```
nm [options] [objfile...]	# 列出objfile里的符号，如未列出objfile则默认为a.out。
```

#### 选项

```
-A, -o, --print-file-name	# 列出符号来源于哪个文件
-a, --debug-syms	# 列出所有符号
-C, --demangle[=style]	# 把低级符号解码为用户级的名称。
-l	# 找出符号对应的文件名和行号
-n, -v, --numeric-sort	# 依据地址排序（默认是依据字母排序）	
-u	# 只列出未定义符号
```

#### 结果的含义

结果包含了三部分：符号的值，符号的类型，符号的名称。

其中符号类型可能是：

```
b, B	# 符号在bss段
d, D	# 符号在未初始化的数据段
r, R	# 符号在只读的数据段
t, T	# 符号在代码段
U		# 符号未定义
u		# 符号是单独的全局符号
v, V	# 符号是弱对象
```



