在iOS 6的静态库项目中,.c文件中的某些函数被其他人引用,因此被视为全局符号,但不应向该库的用户公开。
我如何strip
这些功能名称出来?另外,我如何隐藏这些obj文件名,以便没有人能在nm
输出中看到.o名称?
我尝试启用/设置:
修改
我看到还有另一个Build Setting项目'Additional Strip Flags'。
通过在其中添加标志-R /path/to/symbol_list_file
,strip
命令将删除文件中指示的符号,或-s /path/to/exported_symbol_list_file -u
以指示接口并同时保留未定义的符号。
答案 0 :(得分:2)
你显然可以strip
最后的二进制文件。
如果你必须隐藏符号,那么它们必须是static
,这迫使你使用较少的实现文件来允许共享符号,这是不方便的。