ARC forbids explicit message send of ‘autorelease’

Pocket
LINEで送る

また出くわしたので備忘録として記載しておきます。

iOS5になってからARCを使用していない既存のライブラリをインポートしてコンパイルすると
以下のエラーが大量にでてくる。

ARC forbids explicit message send of ‘autorelease’
‘release’ is unavailable: not available in automatic reference counting mode

【原因】
iOS5からはARCがメモリ管理を適切に行ってくれるらしいのでreleaseやautoreleaseが必要なくなったみたい。
必要ないのに記述してるから、いらないよ!ってエラーらしい。

【対処法】
① Xcodeでプロジェクトファイルを選択
② 「Build setting」の「Apple LLVM Compiler 3.0 – Language」の中に
「Objecctive-C Automatic Refarence Counting」があるので、それを「YES」から「NO」に変更

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください