0

我为 Debug/iPhone 编译了我的应用程序,打开了用于 CPU 时间分析的仪器,将其连接到我的 iPad,选择我的应用程序 (MainApp) 作为目标,记录了一个仪器会话,然后停止了它。

没有一个函数名是符号化的。它们都看起来像这样(0x133de3、0x2a1be7 等)。

我去了 Instruments->File->Re-Symbolicate Document...,然后我选择了我的应用程序并选择了 Locate。我将它指向我认为由 monotouch 在此路径生成的正确符号文件:Desktop/iPadApp/MainApp/bin/iPhone/Debug/MainApp.app.dSYM

但是,当我单击打开时,它显示“无法使用选定的符号 - 重新符号化需要 MainApp.app.dSYM 和 MainApp 具有匹配的 UUID。”

我不确定这意味着什么或如何解决问题。我在 Snow Leopard 上运行 XCode 4.2、MonoDevelop 3.0.3.2 和 Monotouch 5.2.12。

任何帮助将非常感激!谢谢!

4

1 回答 1

1

这个答案是由米格尔提供的......

假设您的应用程序名为“Foo”,您可以检查二进制文件的 UUID 以确保它们彼此对应,如下所示:

$ dwarfdump --uuid Foo.app/Foo
UID: A5B46B4C-F5A1-3CDD-82B0-02CB7222F8CC (armv7) Foo.app/Foo
$ dwarfdump --uuid Foo.app.dSYM
UID: A5B46B4C-F5A1-3CDD-82B0-02CB7222F8CC (armv7) Foo.app.dSYM/Contents/Resources/DWARF/Foo

如果它们不匹配,则意味着您没有最新的构建,并且其中一个文件已过时。

于 2012-07-13T21:53:04.993 回答