iPhone 模拟器启动时的 EXC_BAD_ACCESS。应用程序在设备上运行
Posted
技术标签:
【中文标题】iPhone 模拟器启动时的 EXC_BAD_ACCESS。应用程序在设备上运行【英文标题】:EXC_BAD_ACCESS on iPhone Simulator start. App works on device 【发布时间】:2011-07-16 19:00:09 【问题描述】:我正在尝试在 iPhone 模拟器中测试我的应用,因此我点击了“运行”按钮。它显示初始默认启动屏幕,但随后崩溃并出现 EXC_BAD_ACCESS 错误。
错误看起来像是来自某些启动例程。
调试器将这两行作为错误指向我:
0x8fe0f316 <+0276> je 0x8fe0f342 <__dyld__ZN16ImageLoaderMachO12bindLocationERKN11ImageLoader11LinkContextEmmPKS0_hPKclS7_+320>
0x8fe0f318 <+0278> mov %edx,(%edi)
回溯只显示以下正在执行的函数:
#0 0x8fe0f318 in __dyld__ZN16ImageLoaderMachO12bindLocationERKN11ImageLoader11LinkContextEmmPKS0_hPKclS7_ ()
#1 0x8fe15ee3 in __dyld__ZN26ImageLoaderMachOCompressed6bindAtERKN11ImageLoader11LinkContextEmhPKchliS5_PNS_10LastLookupE ()
#2 0x8fe218ff in __dyld__ZN26ImageLoaderMachOCompressed8eachBindERKN11ImageLoader11LinkContextEMS_FmS3_mhPKchliS5_PNS_10LastLookupEE ()
#3 0x8fe22c42 in __dyld__ZN26ImageLoaderMachOCompressed6doBindERKN11ImageLoader11LinkContextEb ()
#4 0x8fe0cc32 in __dyld__ZN11ImageLoader13recursiveBindERKNS_11LinkContextEb ()
#5 0x8fe0dea3 in __dyld__ZN11ImageLoader4linkERKNS_11LinkContextEbbRKNS_10RPathChainE ()
#6 0x8fe056af in __dyld__ZN4dyld4linkEP11ImageLoaderbRKNS0_10RPathChainE ()
#7 0x8fe0788d in __dyld__ZN4dyld5_mainEPK12macho_headermiPPKcS5_S5_ ()
#8 0x8fe018b1 in __dyld__ZN13dyldbootstrap5startEPK12macho_headeriPPKcl ()
#9 0x8fe01057 in __dyld__dyld_start ()
我已经重新启动了 Xcode,做了一个 make clean 等等。该应用程序在设备上正常启动。有什么想法吗?
【问题讨论】:
您是否在使用任何可能未针对 x86 编译的静态库? 我不知道。我正在使用标准框架和 cocos2d。据我所知,不是静态库。 【参考方案1】:EXC_BAD_ACCESS
通常暗示你正在发布一些已经发布的东西。您可以通过将NSZombieEnabled
标志添加到您的环境来了解更多信息。
【讨论】:
嗯...MachOImageLoader 告诉我您正在使用的库尚未针对应该运行的体系结构进行编译。仔细检查它的架构!以上是关于iPhone 模拟器启动时的 EXC_BAD_ACCESS。应用程序在设备上运行的主要内容,如果未能解决你的问题,请参考以下文章