2011-08-23 6 views
8

Sto cercando di compilare utilizzando il compilatore GV 4.0 LLVM e ottengo questo errore in più dei miei file .m: ARC proibisce l'invio esplicito del messaggio di 'release' Ho provato a usare -fno -objc-arc come flag del compilatore ma che restituisce l'errore: opzione della riga di comando non riconosciuta "-fno-objc-arc".Errore ARC durante la compilazione

Come posso risolvere questo?

risposta

45

Rimuovere semplicemente tutte le chiamate su -release. Non sei autorizzato a chiamare -release sotto ARC perché il compilatore inserirà tutte le chiamate necessarie retain/release per te. Ulteriori informazioni su ARC here.

L'altro modo è quello di utilizzare lo strumento di conversione, e Xcode in grado di convertire il progetto di ARC (ivi compresi rimozione queste chiamate) per voi:

Per disabilitare ARC del tutto, modificare le impostazioni di generazione:

Comunque ti consiglio di iniziare ad usare ARC, renderà le cose molto più semplici e anche più veloci.

+0

C'è un modo per disabilitare semplicemente ARC nel compilatore LLVM? Quando clicco Converti in Objective-C ARC ... dice che tutti gli obiettivi lo usano già. – Ben

+0

Certo, aggiornerò la mia risposta in un secondo. – jtbandes