I386でアプリがクラッシュし、x86_64で動作します
-
28-09-2019 - |
質問
今日、まだ64ビットに移植されていない低レベルのQuicktimeのものを使用しようとしていたので、今日はXcodeプロジェクトでアーキテクチャを切り替えてみました。 x86_64で以前にコンパイルしたとき、私のアプリは正常に実行されました。次に、アーチをi386に切り替えてブームに切り替えました。私のアプリは起動時にクラッシュし続けます。
奇妙なことは、スタックTrackeが私自身のコードとは何の関係もないということです。
#0 0x9929ebf1 in __CFBasicHashDeallocate
#1 0x99286ea1 in _CFRelease
#2 0x992b397d in _CFAutoreleasePoolPop
#3 0x917d1dda in NSPopAutoreleasePool
#4 0x92b67bc9 in loadNib
#5 0x92b66f99 in +[NSBundle(NSNibLoading) _loadNibFile:nameTable:withZone:ownerBundle:]
#6 0x92b66eaa in +[NSBundle(NSNibLoading) loadNibFile:externalNameTable:withZone:]
#7 0x92b66df5 in +[NSBundle(NSNibLoading) loadNibNamed:owner:]
#8 0x92b63bf9 in NSApplicationMain
#9 0x000023c8 in main at main.m:13
何か案は?
解決
私の推測では、32ビットモードで安全ではないペン先にオブジェクトを作成したと思います。たとえば、たとえば、cgfloatの代わりにダブルまたはnsintegerの代わりにint64_tを使用して、真実ではないオブジェクトのサイズについて仮定を立てることができます。
所属していません StackOverflow