在自己的项目中具有静态库作为目标的通用代码库.该项目被拖入主应用程序的项目.在主应用程序的目标的构建阶段,我将静态库添加为目标依赖关系,并在链接二进制库下添加.该项目根据需要构建和运行.
现在,如果我从主项目生成存档,我可以在Finder中查看该存档,并且它包含可以用于标识崩溃日志的.dSYM文件.但是,.dSYM只包含主应用程序的符号,而不是静态库的符号.为了过度确认,我运行了以下内容:
DWarfdump /path/to/app.dSYM
并且输出(大多数)不包含静态库中的任何符号.我发现唯一的例外是,我的主项目的AppDelegate是静态库中对象的一个子类,并且.dSYM中有超级类的条目.但是,其他类都不存在.
在静态库的项目目标的Build Settings中,我设置了以下内容:
>复制期间剥离符号:NO
>连接产品:NO
>生成调试符号:是
>默认隐藏的符号:NO
如果有人可以提供指导,我将非常感谢.
解决方法 静态lib符号会显示在应用程序的dSYM文件中,而DWarfdump会显示出来.DWarfdump -a path/to/app.dSYM >dsymAsText.txt
这应该会显示lib的符号.
但是,如果你(正如我最近一样)寻找一个符号表来生成,只需要你的静态库,我就得出结论,这将是相当无用的;一旦编译成新的应用程序,这些符号和地址将全部更改,并且您将对所有内容有完全不同的偏移(如果我错了,请有人更正我).
我不完全确定有办法摆脱这一切.
总结以上是内存溢出为你收集整理的iOS静态库调试符号未包含在dSYM中全部内容,希望文章能够帮你解决iOS静态库调试符号未包含在dSYM中所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)