带iOS 4.2.1的越狱iPhone 3G可以';不能用XCode进行调试
我正在尝试用XCode 3.2.5调试我的应用程序,用iOS 4.2.1调试越狱的iPhone3G 当我使用启用的断点启动调试时,应用程序无法启动(它会在“Default.png”屏幕上死机),并且数据格式化程序暂时不可用,将在“continue”后重试。(找不到dlopen函数,因此无法加载共享库。)GDB中的消息 当我在没有启用断点的情况下启动调试时,应用程序启动时不会出现问题 我试着做上面描述的步骤,但没有任何结果 当我使用iOS 4.1时,它有一个问题 在iPhone Organizer的每个连接上显示以下消息:带iOS 4.2.1的越狱iPhone 3G可以';不能用XCode进行调试,iphone,xcode,Iphone,Xcode,我正在尝试用XCode 3.2.5调试我的应用程序,用iOS 4.2.1调试越狱的iPhone3G 当我使用启用的断点启动调试时,应用程序无法启动(它会在“Default.png”屏幕上死机),并且数据格式化程序暂时不可用,将在“continue”后重试。(找不到dlopen函数,因此无法加载共享库。)GDB中的消息 当我在没有启用断点的情况下启动调试时,应用程序启动时不会出现问题 我试着做上面描述的步骤,但没有任何结果 当我使用iOS 4.1时,它有一个问题 在iPhone Organizer
**检测到未知iOS**Xcode没有名为“iPhone”的设备上iOS版本的调试信息。Xcode可以从设备收集调试数据,以支持使用此版本的iOS进行开发。每个iOS版本只需执行一次此过程,需要几分钟。
谢谢你的帮助 我的完全不越狱的iPhone在4.2.1中实现了这一点,并且得到了完全相同的消息和问题。这是最新版本的XCode中的新功能,因此可能有问题。重新授权您的设备可能会解决您的问题:
编辑 请注意,我使用了越狱3GS和非越狱3GS。 解决方案,需要一款带有4.2.1(8C148a)的非越狱iPhone 3GS:
干杯 最新的Xcode+SDK版本不知道iOS 4.2.1,因为它是在最新补丁发布之前发布的。Xcode的Organizer有一个新功能,可以尝试直接从设备上下载调试支持文件,但显然对某些人来说,它有一些问题(可能与越狱有关)
iOS 4.2.1与4.2非常相似,可以强制Xcode使用4.2支持文件在4.2.1设备上进行调试。要做到这一点,只需转到
/Developer/Platforms/iPhoneOS.platform/DeviceSupport
文件夹,手动复制Symbols
子文件夹和/或developerdispage.*
文件,从4.2(8C134)
到4.2.1(8C148)
(或Organizer为您的设备创建的任何发布文件夹).除了Fnord的建议之外,还有一个建议是确保iPhone 3G越狱设备未启用多任务处理或PwnageTool中的“可重入功能”
但我不确定这是否有效果。但是,如果我们真的想在真实世界的iPhone 3G环境下测试它,那么这样做是合理的。为了避免每次将iPhone呈现给XCode时在Organizer中(重新)收集调试符号(实际上什么都不做),一个简单的解决方法是复制:
developerDiskAge.dmg和developerDiskAge.dmg.signature
从4.2(8C134)到空的4.2.1(8C148)文件夹
XCode将识别设备,您可以调试代码,但不需要IOS框架的调试符号。
但是,gdb控制台将处于活动状态,您可以使用它调试代码(使用调试符号)
顺便说一句,您可以始终使用模拟器来获得完整的IOS支持:-)我喜欢您所说的“功能”:)可能需要更彻底的清洁。一只干净的雪豹?那只会浪费我的时间。你可能没有完全卸载Xcode。必须打开终端并输入
sudo/Library/uninstall devtools--mode=all
,才能真正删除所有底层内容。我想这些数据保存在别的地方。~/Library/MobileDevice/Devices中的deviceinfo文件也已被删除。如果您不像那样通过命令行卸载它,可能会留下一些东西,使您无法进行真正的新安装。我知道。我总是用命令行卸载。例如,使用--mode=all卸载Xcode 4不会卸载unixdev和systemsupport。因此,我还尝试卸载unixdev和systemsupport,以及之后的所有。当我下载设备符号时,它仍然无法下载它们(只有dyld在符号文件夹中)。不幸的是,这是越狱的风险。这个问题似乎没有解决