Linux幼儿园

  • 首页
  • 信息安全
  • 防火墙
  • 知识点
  • 活动目录
  • 硬件
  • 软件
  • linux干货
  • linux命令集
    • 备份压缩
    • 文件传输
    • 文件管理
    • 文档编辑
    • 磁盘管理
    • 系统管理
    • 网络通讯
    • 设备管理
    • 其他命令
  1. 首页
  2. linux命令集
  3. 其他命令
  4. 正文

strip命令 - 从特定文件中去除一些符号信息和调试信息

07/28/2020 733点热度 0人点赞 0条评论

strip命令通过除去绑定程序和符号调试程序使用的信息,降低扩展公共对象文件格式(XCOFF)的对象文件的大小。

strip不仅仅可以针对可执行文件, 还能针对目标文件和动态库等。

在实际的开发中, 经常需要对动态库.so进行strip操作, 减少占地空间。而在调试的时候(比如用addr2line), 就需要符号了。因此, 通常的做法是:strip前的库用来调试, strip后的库用来实际发布, 他们两者有对应关系。 一旦发布的strip后的库出了问题, 就可以找对应的未strip的库来定位。

语法格式:strip [参数]

常用参数:

-e在对象文件的可选头中设置 F_LOADONLY 标志
-E复位(关闭)对象文件的可选头中的 F_LOADONLY 位
-H除去对象文件头、不论什么可选的头以及全部段的头部分
-l(小写 L)从对象文件里除去行号信息。
-r除了外部符号和静态符号条目,将所有符号表信息除去
-t除去大多数符号表信息,但并不除去函数符号或行号信息
-V打印 strip 命令的版本
-x除去符号表信息,但并不除去静态或外部符号信息

参考实例

要除去 a.out 文件里的符号表和行号信息,请输入:

[root@linuxvip ~]# strip a.out

要除去 a.out 文件里的对象文件头,请输入:

[root@linuxvip ~]# strip -H a.out

要除去 lib.a 中的 32 位和 64 位符号表,请输入:

[root@linuxvip ~]# strip -X 32-64 lib.a
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可
标签: 暂无
最后更新:07/28/2020

JJJ

这个人很懒,什么都没留下

打赏 点赞
< 上一篇
下一篇 >

COPYRIGHT © 2021 linuxvip.com. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

TrustAsia 安全签章