我尝试编译库并获取“ DWARF with dSYM File”格式的调试符号。这适用于动态库,但不适用于静态库。
XCode“快速帮助”说,“不需要dSYM文件,也不会为静态库或目标文件产品创建dSYM文件。[dwarf-with-dsym]”
谁能解释为什么?
谢谢
我偶然发现了这一点,并希望能对同一点有所了解
由于静态库并不是真正的可执行文件,因此它仍将包含符号。因此,没有dSYM的意义,当该库又被另一个应用程序使用时,将存在一个dSYM,其中包含该应用程序的符号和您的静态框架的符号。
另一方面,动态框架本身就是可执行文件,就可以将其加载到应用程序中并且喜欢它已经发生了。因此,您的库中的所有符号已被转换为机器代码,但是有一个dSYM,其中将包含您的符号映射。
如果需要进一步说明,请为像我这样的可怜灵魂添加此内容。