O aplicativo iOS 4 falha na inicialização no iOS 3.1.3: símbolo não encontrado: __NSConcreteStackBlock
Estou executando o Xcode 3.2.3 com o iOS 4.0 SDK. Criei meu aplicativo com o SDK base = iphoneos4.0, SDK ativo = iphoneos4.0, destino de implantação = 3.1.3 e arquitetura = padrão (arm6 arm7). Compilador = GCC 4.2. Pelo que entendi, esta é a maneira correta deConstruir um aplicativo para iOS 4 e 3.
O aplicativo funciona bem em dispositivos executando o iOS 4. Mas ele falha na inicialização quando você tenta executá-lo em um dispositivo com iOS 3.1.3 (um iPod Touch 1G):
dyld: Symbol not found: __NSConcreteStackBlock
Referenced from: /var/mobile/Applications/192B30ED-16AC-431E-B0E9-67C1F41FD5DA/MyApp.app/MyApp
Expected in: /usr/lib/libSystem.B.dylib
Parece ser um problema com uma biblioteca vinculada dinamicamente de "baixo nível", ANTES da minha função main () ser chamada. Eu até tentei reiniciar o dispositivo, etc., sem sorte. Aqui está parte do log de falha:
Process: MyApp [60]
Path: /var/mobile/Applications/192B30ED-16AC-431E-B0E9-67C1F41FD5DA/MyApp.app/MyApp
Identifier: MyApp
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2010-07-22 17:16:17.942 -0400
OS Version: iPhone OS 3.1.3 (7E18)
Report Version: 104
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x00000001, 0xe7ffdefe
Crashed Thread: 0
Dyld Error Message:
Symbol not found: __NSConcreteStackBlock
Referenced from: /var/mobile/Applications/192B30ED-16AC-431E-B0E9-67C1F41FD5DA/MyApp.app/MyApp
Expected in: /usr/lib/libSystem.B.dylib
Dyld Version: 149
Binary Images:
0x1000 - 0x80fff +MyApp armv6 <d5f0ff6f233b4b034c222c16438c88d9> /var/mobile/Applications/192B30ED-16AC-431E-B0E9-67C1F41FD5DA/MyApp.app/MyApp
0x2fe00000 - 0x2fe26fff dyld armv6 <544395a4b5546114b878d5131a84fd7f> /usr/lib/dyld
0x30410000 - 0x30536fff libSystem.B.dylib armv6 <0373fd64e915a17160732b29d343f95f> /usr/lib/libSystem.B.dylib
Obrigado por qualquer conselho!