Ios Xcode';s时间分析器显示地址而不是符号
一般来说,我的问题可以在这个屏幕截图上看到: 很多非符号化的地址和一些在“符号”菜单中看起来破碎的东西 好的,一些设置和操作试图解决这个问题。 但没有一个仍然有用:Ios Xcode';s时间分析器显示地址而不是符号,ios,xcode,instruments,Ios,Xcode,Instruments,一般来说,我的问题可以在这个屏幕截图上看到: 很多非符号化的地址和一些在“符号”菜单中看起来破碎的东西 好的,一些设置和操作试图解决这个问题。 但没有一个仍然有用: 配置文件选项卡设置为使用调试 调试和发布均禁用符号剥离 调试和发布的优化级别均为“无” 清理、删除、重新启动等 mdimport~/Library/Developer/ DWARF和dSYM格式 我也有同样的问题——我也做了你清单上的所有事情。以下是最终对我有效的方法: 在Instruments中,如果进程正在运行,请停止进程
- 配置文件选项卡设置为使用调试
- 调试和发布均禁用符号剥离
- 调试和发布的优化级别均为“无”
- 清理、删除、重新启动等
- mdimport~/Library/Developer/
- DWARF和dSYM格式
- 在Instruments中,如果进程正在运行,请停止进程
- 转到文件->符号,并在dSYM路径下找到未被符号化的库
- 在我的例子中,它指向垃圾桶中的物品。因此,我清空了垃圾桶,删除了派生数据文件夹中的模块缓存和项目,当我重建项目时,它又开始工作了。在您的情况下,它可能指向某个其他文件,该文件不存在或无法通过仪器访问
- libsqlite3.tbd而不是libsqlite3.dylib
- libstdc++.6.tbd代替libstdc++.dylib
我不知道为什么会这样,但这是在我的符号在仪器中丢失之前我所做的唯一项目更改。在我的例子中,我将我的派生数据目录排除在聚光灯之外。事实证明,如果您这样做,您必须通过instruments->Preferences->Symbols将其添加回instruments中,您可以使用instruments 12.0添加您的
dSYM
Instruments -> Preferences... -> Symbols
//or
File -> Symbols...
//if File -> Symbols... is not active - stop the process and try again
*另外,不要忘记预先生成
.dSYM
文件在我分析的目标上激活“始终嵌入Swift标准库”,为我修复了它。YMMV不寻常。它应该使用默认的符号/剥离设置在发布模式(无点评测未优化的代码)下运行。我从来没有遇到过任何问题。我在这两个方面都做过modes@bronenos确保生成调试符号构建设置设置设置为“是”。两种模式都设置为“是”。我遇到它的次数太少了,我认为这是一个错误,重启Xcode对我来说总是有效的。