SIGABRT Xcode 4.2问题

时间:2012-02-28 19:26:27

标签: ios xcode4.2 sigabrt

由于我已经从xcode 3.1升级到xcode 4.2,当我调试程序时出于某种原因我收到SIGABRT错误(即调用不存在的对象的方法)Xcode显示主要错误程序的功能,而不是生成SIGABRT的行。

也许我在调试器或xcode中缺少某种配置?任何想法?

3 个答案:

答案 0 :(得分:2)

我长期遇到同样的问题,我刚才找到了解决方案。不知道它是否是最犹豫的方式,但至少它对我有用。基本上你应该创建一个全局断点(全局意义适用于你所有的项目)。

结帐this blog postthis tutorial on how to create symbolic breakpoints。我自己创建了一个异常断点(它也以这种方式捕获objc_exception_throw):

(for all exceptions)

然后将其移至“用户”断点空间:

enter image description here

答案 1 :(得分:0)

确保您使用的方案具有活动断点。您可以通过点击方案选择器旁边的按钮来打开它们。

http://bit.ly/zuTnpF

答案 2 :(得分:0)

对我来说是什么,是我发现here与创建NSZombies有关的东西

我至少会复制亮点:

  1. 转到Xcode 4中的项目
  2. 可以在Scheme编辑器中设置环境变量(在菜单栏中找到Product - > Edit scheme ...):
  3. 将变量命名为NSZombieEnabled并将其值设置为YES。
  4. 在调试模式下运行您的应用。您可能会收到...消息 解除分配实例...消息,调试器在错误的行停止。此信息会导致问题。
  5. 准备好后,通过将YES更改为NO来禁用NSZombieEnabled。