Ich versuche, mit dem LLVM GCC 4.0-Compiler zu kompilieren, und ich bekomme diesen Fehler in mehreren meiner .m-Dateien: ARC verbietet explizite Nachricht senden von 'release' Ich habe versucht, -fno-objc-arc als Compiler-Flag zu verwenden, aber das gibt den Fehler zurück: Nicht erkannte Befehlszeilenoption "-fno-objc-arc".
Wie kann ich das lösen?
Entfernen Sie einfach alle Aufrufe von -release
. Sie dürfen -release
nicht unter ARC aufrufen, da der Compiler alle erforderlichen Aufrufe von retain
/ release
für Sie einfügt. Lesen Sie mehr über ARC hier .
Die andere Möglichkeit besteht darin, das Konvertierungstool zu verwenden, und Xcode kann Ihr Projekt für Sie in ARC konvertieren (einschließlich Entfernen dieser Aufrufe):
Um ARC vollständig zu deaktivieren, ändern Sie Ihre Build-Einstellungen:
Ich würde jedoch empfehlen, ARC zu verwenden, es wird die Dinge viel einfacher und auch schneller machen.
Wenn Sie die ASI-API ( Ссылка ) api verwenden, lesen Sie die folgende Antwort muss mit -fno-obj-arc Flags für bestimmte Klassen erstellt werden ... Dateien unterstützt nicht die ARC-Funktion, wie Sie mit umgehen und beziehen sich auf die Antwort" Deaktivieren ARC für diese eine Klasse "
Tags und Links objective-c ios automatic-ref-counting