gpt4 book ai didi

ios - 链接静态库后删除名称

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:11:19 25 4
gpt4 key购买 nike

在 iOS 6 的静态库项目中,.c 文件中的某些函数被其他函数引用,因此被认为是全局符号,但不应向该库的用户公开。

如何剥离这些函数名?另外,我怎样才能隐藏那些 obj 文件名,以便没有人可以在 nm 输出中看到 .o 名称?

我尝试启用/设置:

  • 部署后处理
  • 在复制过程中去除调试符号
  • 剥离链接产品
  • strip 类型:“非全局符号”或“调试符号”
  • 使用单独的 strip

编辑:

我看到还有另一个build设置项“Additional Strip Flags”。通过在其中添加标志 -R/path/to/symbol_list_filestrip 命令将删除文件中指示的符号,或 -s/path/to/exported_symbol_list_file -u 表示接口(interface),同时留下 undefined symbol 。

最佳答案

不,你不能。静态库只是目标文件的集合,静态库中的目标文件对那些使用静态库的目标文件没有特殊权限。

您显然可以剥离最终的二进制文件。

如果您必须隐藏符号,那么它们需要是static,这会迫使您使用更少的实现文件来允许共享符号,这很不方便。

关于ios - 链接静态库后删除名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18528460/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com