strip 命令的使用方法

用途

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

语法

strip
[ -V
] [ -r
[ -l
] | -x
[ -l
] | -t
| -H
| -e
| -E
] [ -X
{32
|64
|32_64
}]

[ --
] File
...

描写叙述

strip
命令降低 XCOFF 对象文件的大小。strip
命令从 XCOFF 对象文件里有选择地除去行号信息、重定位信息、调试段、typchk 段、凝视段、文件头以及全部或部分符号表。
一旦您使用该命令,则非常难调试文件的符号;因此,通常应该仅仅在已经调试和測试过的生成模块上使用 strip
命令。使用 strip
命令降低对象文件所需的存储量开销。

对于每一个对象模块,strip
命令除去给出的选项所指定的信息。对于每一个归档文件,strip
命令从归档中除去全局符号表。

能够使用 ar -s
命令将除去的符号表恢复到归档文件或库文件里。

没有选项的 strip
命令除去行号信息、重定位信息、符号表、调试段、typchk
段和凝视段。

标志

-e 在对象文件的可选头中设置 F_LOADONLY
标志。假设对象文件放置在归档中,则该标志告知绑定程序(ld

命令),在与此归档链接时应忽略该对象文件里的符号。

-E 复位(关闭)对象文件的可选头中的 F_LOADONLY

位。(请參阅 -e
标志。)

-H 除去对象文件头、不论什么可选的头以及全部段的头部分。

注:
不除去符号表信息。

-l (小写 L)从对象文件里除去行号信息。
-r 除了外部符号和静态符号条目,将所有符号表信息除去。不除去重定位信息。同一时候除去调试段和
typchk 段。这个选项产生一个对象文件,该对象文件仍能够用作输入到链接编辑器(ld

命令)中。

-t 除去大多数符号表信息,但并不除去函数符号或行号信息。
-V 打印 strip
命令的版本。
-x 除去符号表信息,但并不除去静态或外部符号信息。 -x

标志同一时候除去重定位信息,因此将不可能链接到该文件。

-X
mode
指定应检查 strip
的对象文件的类型。 mode
必须是下列之中的一个:

32
仅仅处理
32 位对象文件
64
仅仅处理 64 位对象文件
32_64
既处理 32 位对象文件,又处理 64 位对象文件

缺省值是处理 32 位对象文件(忽略 64 位对象文件)。也能够用 OBJECT_MODE
环境变量来设置 mode
。比如,OBJECT_MODE=64

使 strip
处理不论什么 64 位对象文件,并忽略 32 位对象文件。-X
标志重设 OBJECT_MODE
变量。

-- (双连字符)将尾随在该标志后的全部參数解释为文件名称。这就同意除去名称是以连字符開始的文件。

退出状态

该命令返回下面退出值:

0 成功完毕。
>0 出错。

演示样例

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

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

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

    strip -X 32-64 lib.a

文件

/usr/ccs/bin/strip 包括 strip
命令。

==================================================================================

UNIX下运行文件的减肥工具 strip
-

  UNIX下文件压缩命令compress大家都比較熟悉了,它的压缩率比較高, 和tar命令结合使用来做数据备份是最合适只是了。但compress压缩也有缺点,就是被压缩后的文件须要用命令uncompress解压后才干正常使用。而用strip命令就没有这个问题,它能清除运行文件里不必要的标示符及调试信息,可减小文件大小而不影响正常使用。但与compress 不同的是,文件一旦strip后就不能恢复原样了,所以strip是一个减肥工具而不是压缩工具。并且,被strip后的文件不包括调试信息,就不能用 dbx来调试程序了。如今让我们来详细效果怎样,看以下一个程序:
  #include
  main()
  {
  printf("hello, world/n");
  }
  用cc编译以后长度为46176字节,用strip后变为了 30648,足足减小了 1/3,并且仍然能够正常运行。除了用strip外,用共享库也是减小运行文件长度的方法。
  注:
   1.假设文件大小没有减小,那就是已经strip过了.
  2.cc 编译时加上"-s"參数,具有相同的作用。
  某种节约空间的办法:
  那就是对于单个比較大的可运行文件能够编写一个zexec脚本.以下的脚本仅仅是针对/usr/bin/cc的
   uncompress ./cc.Z
  mv cc /tmp
  cd /tmp
  ./cc

时间: 2024-08-26 04:42:02

strip 命令的使用方法的相关文章

linux下访问window的共享文件,在命令行实现方法

1.挂载共享目录 mount -t cifs //192.168.0.1/aa  /tmp/export -o username=text,password=test //192.168.0.1/aa   为:windows的共享目录 /tmp/export   为:挂在点 username=test   test为windows的账户 passowrd=test   test为windows的对应帐号密码 2.取消挂载 第一种:umount //192.168.0.1/aa 第二种:umoun

Memcached 常见命令 telnet 使用方法介绍

Memcached 常见命令: telnet 使用方法介绍: (1)建立telnet连接,命令"telnet 127.0.0.1 11211".win7下会提示"telnet不是内部或外部命令",解决方法是"控制面板"-->"程序和功能"-->"打开或关闭windows功能"-->勾选"telnet客户端". (2)添加数据--命令"add name 0 60

linux中的strip命令简介------给文件脱衣服

转载于:http://blog.csdn.net/stpeace/article/details/47090255 作为一名linux开发人员, 如果没有听说过strip命令, 那是很不应该的. strip这个单词, 大家应该早就学过了, 你就记住是脱衣服就行了, 别的不要多想. 在linux中, strip也有脱衣服的含义, 具体就是从特定文件中剥掉一些符号信息和调试信息. 我们来看main.c文件: [cpp] view plain copy print? #include <stdio.h

linux系统 用户和组管理类命令的使用方法

列出当前系统上所有已经登录的用户的用户名,注意:同一用户登录多次,则只显示一次即可. [[email protected] ~]# who    #显示当前用户登录信息 root    tty1         2016-10-05 15:58 root    pts/0        2016-10-05 16:07(192.168.0.17) [[email protected] ~]# who | cut -d' ' -f1    #取出当前用户登录信息的用户名 root root [[e

linux tail命令的使用方法详解

本文介绍Linux下tail命令的使用方法. linux tail命令用途是依照要求将指定的文件的最后部分输出到标准设备,通常是终端,通俗讲来,就是把某个档案文件的最后几行显示到终端上,假设该档案有更新,tail会自己主动刷新,确保你看到最新的档案内容. 一.tail命令语法 tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ] 参数解释: -f 该参数用于监视File文件增长. -c

linux 下rpm命令参数使用方法详解

RPM 是 Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理:在Fedora .Redhat.Mandriva.SuSE.YellowDog等主流发行版本,以及在这些版本基础上二次开发出来的发行版采用: 一个RPM 包中的应用程序,有时除了自身所带的附加文件保证其正常以外,还需要其它特定版本文件,这就是软件包的依赖关系:也就是安装一个rpm包需要的so动态链接库(也称为共享库)的环境.其实就和人的生存环境一样

yum安装命令的使用方法

yum安装命令的使用方法  yum安装常用软件的命令 #yum check-update #yum remove 软件包名 (移除) #yum install 软件包名 (安装) #yum reinstall 软件包名(重新安装) #yum update 软件包名 yum命令常见使用方法 yum -y install 包名(支持*) :自动选择y,全自动 yum install 包名(支持*) :手动选择y or n yum remove 包名(不支持*) rpm -ivh 包名(支持*):安装

(转载)Linux man命令的使用方法

Linux man命令的使用方法(整理收集自网络) Linux提供了丰富的帮助手册,使用Linux man命令来查看一些不熟悉的命令的使用方法,还可以用来查询系统库文件中的一些函数定义和使用方法. Linux man中的man就是manual的缩写,用来查看系统中自带的各种参考手册,但是手册页分为好几个部分,如下所示: 1 Executable programs or shell commands 2 System calls (functions provided by the kernel)

Window8.1 64位无法使用Debug命令的解决方法[附牛人代码]

偶然看到网上一篇文章,讲的是世界黑客编程大赛第一名的一个非常酷的程序,大小仅有4KB,使用debug命令运行. 悲催的是win8.1的debug命令不能使用. 错误如下: 解决方法如下: 1. 下载DOSBox 和Debug.exe 下载地址1:http://download.csdn.net/detail/ljgstudy/7557693(PS:需要1积分,积分多的大神高抬贵手哈~) 下载地址2:http://pan.baidu.com/s/1iwkGY(免积分) 2.安装DOSBox并启动,