AutomaticReferenceCounting(ARC)でARC非対応のモジュールの利用方法 ios 逆引き サンプル
ARC 環境にて開発中に ARC非対応のモジュールを利用した場合、そのままコンパイルを行うとエラーが発生して
コンパイルができません。
ARC forbids explicit message send of ‘retain’
ARC forbids explicit message send of ‘release’
‘release’ is unavailable: not available in automatic reference counting mode
‘autorelease’ is unavailable: not available in automatic reference counting mode
(例)例えば下記のモジュールはARC非対応でした。他にも多くのモジュールがまだ非対応だと思われます。
TouchJSON
AdWhirl
libxml2
そこで、ARC 環境にて上記のようなモジュールを利用する場合は、
左のファイルエクスプローラーからプロジェクトを選択して、
TARGES → BuildPhases → CompileSources
を選択して、非対応モジュールをダブルクリックします。
すると Compiler Flags を記入する窓が表示されますので、下記を記入してください。
-fno-objc-arc
後は、再びコンパイルを行うと、問題なくコンパルが成功します。