首页 文章

使用llvm 2.0编译器构建EXEC_BAD_ACCESS时,ad-hoc测试崩溃

提问于
浏览
3

我将一个正在进行的项目从Xcode 3迁移到Xcode 4.LMID 2.0编译器的ad-hoc构建在iPod Touch 2G(iOS 4.2.1)上崩溃,但在iPad(iOS 4.3)上运行良好 . 这在迁移到Xcode 4之前从未发生过 .

当我在设备上使用调试配置进行测试时,没有发生崩溃 . 当我使用ad-hoc配置(从发布中复制)进行测试时,它会崩溃 . 当我将ad-hoc配置中的编译器版本从“LLVM 2.0”切换到“LLVM GCC4.2”或“GCC 4.2”时,没有崩溃 .

因此,我将“LLVM GCC 4.2”用于ad-hoc和发布配置作为解决方法 . 但我想知道崩溃的可能原因是什么 .

我没有发布崩溃报告,因为它只说崩溃线程0,没有堆栈流 .

3 回答

  • 1

    请尝试Xcode 4.0.2,它包含针对LLVM编译器2.0的目标错误修复,它可以纠正出现类似症状的问题 .

    谢谢!

    -克里斯

  • 3

    我认为这与远程调试器无法以任何原因连接到手机上的应用程序有关 . 你的Xcode 3项目是否有一个带有 get-task-allow set的Entitlements.plist?你正在剥离调试符号吗?编译器优化?看一下设备的控制台日志中的管理器窗口,如果您有其他代码问题,我打赌您会看到有关 com.apple.debugserver 的错误 .

    我遇到了类似的情况,也许还没有完全解决 . 在我的“发布”方案中,使用Ad-Hoc构建配置,我告诉Xcode在运行时没有连接到GDB,但我注意到它仍然试图连接远程调试器,这就是我认为它会立即崩溃的原因 . 崩溃后,我会在Xcode中停止当前正在运行的进程,然后从手机上手动启动已安装的应用程序,该应用程序正常运行 .

    它很可能不是你的应用程序直接错误,而是项目,构建设置和远程调试器的完美风暴 . 尝试使用运行设置,也许你可以从中获得一个radr .

  • 1

    升级到xCode 4.0.2就是您所需要的!以下是解释此问题的有用链接:https://devforums.apple.com/thread/92279?start=50&tstart=0(需要Apple帐户)

相关问题