2012-02-29 11 views
6

In seguito a un argomento StackOverflow relativo alla disattivazione del meccanismo del compilatore ARC per classi specifiche, ho aggiunto l'argomento -fno-objc-arc alla colonna Flags di compilazione nella sezione Origini di compilazione (scheda Fas Buil all'interno di TARGETS progetto). Anche se le impostazioni sono state convalidate, non sono in grado di creare la mia applicazione poiché il compilatore dice che retain, release, etc. non può essere utilizzato in ARC.ARC: impostazione degli indicatori del compilatore su -fno-objc-arc e errori di creazione

Come posso risolvere il problema precedente? Grazie in anticipo.

risposta

7

Hai utilizzato lo strumento di migrazione per eseguire la migrazione? Hai aggiunto i flag del compilatore allo a tutti i file che sono stati rilasciati/conservati?

Ho scritto circa ARC migration on my blog qui.

+1

Ottimo post sul blog! – zaph

+0

@MugunthKumar Per la prima domanda n. Sì per il secondo. +1 per la tua guida. Grazie. –

+0

Sebbene ciò possa tecnicamente rispondere alla domanda, [sarebbe preferibile] (http://meta.stackexchange.com/q/8259) per poter riassumere qui il materiale collegato. Altrimenti, la risposta rischia di perdere la sua utilità a causa del link rot. –

2

Sì È vero se si utilizza l'applicazione ARC For iphone. Non è possibile utilizzare manualmente retain, release, etc.. Questi messaggi vengono automaticamente inseriti dal compilatore. Dovresti controllare correttamente il tuo codice per quale classe ottieni un errore. Penso di sì, stai ancora utilizzando retain, release, etc. per le classi abilitate ARC. Quindi, per prima cosa controlla le tue classi, in cui si è verificato questo errore.

+3

ARC può essere disabilitato su file per file con il flag 'fno-objc-arc'. – zaph

+0

@Zaph hai ragione, qui intendo lo stesso. – Kamarshad

+1

hey la bandiera è in realtà -fno-objc-arc – nickthedude

Problemi correlati