xcode - 为什么 Xcode 不为静态库生成 dSYM
问题描述
我尝试编译库并使用“DWARF with dSYM File”格式获取调试符号。这适用于动态库,但不适用于静态库。
XCode“快速帮助”说“不需要dSYM文件,也不会为静态库或目标文件产品创建)。[dwarf-with-dsym]”
谁能解释为什么?
谢谢
解决方案
我偶然发现了这一点,并希望能对此有所了解
由于静态库并不是真正的可执行文件,它仍将包含其中的符号。所以 dSYM 没有意义,当这个库反过来被另一个应用程序使用时,就会有一个 dSYM 包含应用程序的符号和静态框架的符号。
另一方面,动态框架本身就是一个可执行文件,因为它已准备好加载到应用程序中并且已经在其上进行了链接。因此,您库中的所有符号都已转换为机器代码,但是有一个 dSYM 将包含您的符号映射。
为像我这样的可怜的灵魂添加了这个,如果我需要进一步解释的话。
推荐阅读
- python - 为什么 Pip 声称 Python 的版本不在给定范围内?
- c# - 如何等到创建表单句柄后再调用?
- android - animation.hasEnded 不像我预期的那样工作。为什么?
- google-apps-script - Google 表格 – 在多个工作表的特定范围内自动排序 2 列
- laravel - @livewireStyles @livewire('navigation-menu') 不起作用
- java - 指定主机时无法读取原始网址
- python - Discord.py meme bot with praw
- javascript - 我是否应该一直为用 js 编写的 web 编程的 sql 批处理?
- r - 具有多个类别预测变量和数字预测变量的二元结果的对数二项式回归
- jqtree - JQTree 从文本输入数组中选择节点