Go to main content

手册页部分 1:用户命令

退出打印视图

更新时间: 2018年8月8日 星期三
 
 

strip(1)

名称

strip - 删除目标文件中的符号表、调试和行编号信息

用法概要

strip [-lVx] file...

描述

strip 命令可删除 ELF 目标文件中的符号表 SHT_SYMTAB 及其相关联的字符串表、调试信息和行编号信息。即除了符号表及其相关字符串表外,还会删除以下部分:

.compcom
.debug*
.line
.stab*
.SUNW_ctf
.zdebug*

一旦该删除流程完成,就能有限访问该文件的符号调试信息。因此,此命令只能在调试和测试过的生产模块上运行。

如果除处理成员外,还对通用归档文件(请参见 ar.h(3HEAD))执行 strip,则 strip 会删除归档符号表。必须首先执行带 –s 选项的 ar(1) 命令来恢复归档符号表后,才能通过 ld(1) 命令链接归档。

strip 用于降低目标文件所占用的文件存储开销。

选项

可使用以下任意选项来控制从 ELF 目标文件中删除的消息量。支持以下选项:

–l

仅分离行号信息。不分离符号表或调试信息。

–V
–-version

输出版本信息。

–x

不删除符号表。可能删除调试和行编号信息。

–?
–-help

输出用法消息并立即退出。

操作数

支持下列操作数:

file

与执行文件对应的路径名。

环境变量

有关影响 strip 执行的以下环境变量的说明,请参见 environ(7):LANG、LC_ALL、LC_CTYPE、LC_MESSAGES 和 NLSPATH。

退出状态

将返回以下退出值:

0

成功完成。

>0

出现错误。

文件

/tmp/strp*

临时文件

属性

有关下列属性的说明,请参见 attributes(7)

属性类型
属性值
可用性
developer/base-developer-utilities
接口稳定性
Committed(已确定)
标准
请参见 standards(7)

另请参见

ar(1)as(1)elfcompress(1)ld(1)mcs(1)tmpnam(3C)elf(3ELF)ar.h(3HEAD)a.out(5)attributes(7)environ(7)standards(7)

附注

如果符号表部分包含在分段中,或者文件是可重定位目标文件,则不会删除该符号表部分。

如果行编号和调试部分包含在分段中,或者其相关联的重定位部分包含在分段中,则不会删除该行编号和调试部分。

可使用 strip 命令来删除 ELF 目标文件中的标准预定义部分集。要按名称删除用户指定的部分,请参见 mcs(1)

strip 命令无法修改核心文件。