2012-10-23 15 views
5

Nel progetto My Xcode avevo integrato il framework XMPP. Funziona perfettamente con il simulatore iOS 5.1. Quando ho provato a eseguire il progetto sul simulatore iOS 4.3 Sto ottenendo il seguente errore:XMPP non funziona su progetto iOS 4.3

dyld: lazy symbol binding failed: Symbol not found: _objc_storeStrong 
    Referenced from: /Users/admin/Library/Application Support/iPhone Simulator/4.3.2/Applications/67451DE6-EFC1-4313-9A29-C2C641F727C6/AppName.app/AppName 
    Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/System/Library/Frameworks/Foundation.framework/Foundation 

dyld: Symbol not found: _objc_storeStrong 
    Referenced from: /Users/admin/Library/Application Support/iPhone Simulator/4.3.2/Applications/67451DE6-EFC1-4313-9A29-C2C641F727C6/AppName.app/AppName 
    Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/System/Library/Frameworks/Foundation.framework/Foundation 

L'errore si è verificato sulla seguente riga di codice: xmppStream = [[XMPPStream alloc] init];

Dopo ulteriore debug ho scoperto che l'errore si verifica qui :

- (id)init 
{ 
    if ((self = [super init])) //**CRASH WHEN EXECUTING THIS STATEMENT 
    { 
     // Common initialization 
     [self commonInit]; 

     // Initialize socket 
     asyncSocket = [[GCDAsyncSocket alloc] initWithDelegate:self delegateQueue:xmppQueue]; 
    } 
    return self; 
} 


Il progetto ho integrato XMPP non è un arco. Così ho aggiunto -fobjc-arc contro tutti i file XMPP. Il progetto di esempio fornito dalla libreria XMPP funziona perfettamente con il simulatore iOS 4.3. Qualcuno può aiutarmi a risolvere questo errore?
Xcode Versione: 4.3.3
iOS: iOS 4.3 Simulator

risposta

0

Se XMPP richiede ARC e si sta trasformando in modo esplicito fuori questo tipo di errori del linker accadono. Provare a rimuovere -fno-objc-arc dai file XMPP e aggiungere -fobjc-arc nelle altre bandiere Linker del progetto. More info

+0

Spiacente, avevo già aggiunto -fobjc-arc contro tutti i file XMPP. Ma il problema persiste – Vaquita

+0

Ma questo è un passo di compilazione, non un tempo di collegamento, giusto? Se ho capito bene, il tuo progetto non è ARC, quindi le librerie ARC non sono collegate per impostazione predefinita. Se alcune delle tue classi richiedono ARC, devi collegarti esplicitamente a loro. –

Problemi correlati