【发布时间】:2020-08-09 20:59:47
【问题描述】:
我想以保留某些函数名称的方式剥离我的二进制文件,因为二进制文件是一个共享库,并且所有其他函数名称都从符号表中剥离。
使用-g 开关删除所有调试信息,这很好,但不包括函数名称。
如果我使用--s --wildcard --keep-symbol="blabla_*" --keep-symbol="*blabla*" ...,它仍然会剥离太多并破坏兼容性。
有没有办法从符号表中删除函数名?我考虑用ELF parser 重写ELF 中的函数名称,但这比应有的更乏味,因为它似乎是一个足够常见的用例,可以由strip 命令或其他“标准化”命令支持.
【问题讨论】:
-
你试过
--strip-unneeded吗? -
@kaylum:这不起作用,因为默认情况下会导出所有函数