strip符号和节移除工具,符号表删除

版权声明:本文为博主原创文章,未经博主允许不得转载。个人博客:www.saoguang.top https://blog.csdn.net/u011580175/article/details/82292409

.symtab因为是在调试和链接时有用的,所以,可以从生产的二进制执行文件中移除。可以使用strip。strip是可以移除符号以及节的工具。

  1. 移除.symtab 符号表 以及 .strtab 符号字符串表
    直接运行

    • strip --remove-section=.symtab file_in
    • strip --remove-section=.strtab file_in
      这里写图片描述
  2. 想要让可执行文件没有.dynsym动态链接表,.dynstr动态链接字符表。
    gcc编译时添加参数,从而使用静态编译。gcc -static 或者 gcc -nostdlib

    • gcc -nostdlib :不连接系统标准启动文件和标准库文件,只把指定的文件传递给连接器。
    • gcc -static:在支持动态链接的系统上,阻止连接共享库。该选项在其它系统上 无效。
  3. 做完2和1步骤后的程序讲没有符号表

  4. 用法说明
    Usage: strip

猜你喜欢

转载自blog.csdn.net/u011580175/article/details/82292409