在 iOS 6 的静态库项目中,.c 文件中的某些函数被其他函数引用,因此被视为全局符号,但不应向该库的用户公开。
我怎么能够strip
这些函数名出来了吗?另外,我怎样才能隐藏这些 obj 文件名,以便没有人可以看到 .o 名称nm
output?
我尝试启用/设置:
- 部署后处理
- 在复制过程中删除调试符号
- 带状连接产品
- Strip Stype:“非全局符号”或“调试符号”
- 使用单独的条带
EDIT:
我看到还有另一个构建设置项“附加条带标志”。
通过在其中添加一个标志-R /path/to/symbol_list_file
, strip
命令将删除文件中指示的符号,或者-s /path/to/exported_symbol_list_file -u
来指示接口并同时留下未定义的符号。
不,你不能。静态库只是目标文件的集合,静态库中的目标文件对这些文件没有特殊的特权。using静态库。
你显然可以strip
最终的二进制文件。
如果您必须隐藏符号,那么它们需要static
,这迫使您使用更少的实现文件来允许共享符号,这很不方便。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)