この投稿にある解決策を試して、AFNetworking ファイルで ARC を無効にしましたが、役に立ちませんでした。
私が失敗しているアイデアはありますか?明らかに、答えは単純であるほど良いです。また、静的ライブラリを作成すると役立つ可能性があることも読みましたが、これは複雑に思えます。
編集
派生データを削除し、 Clean and BuildしてXcode を再起動しようとしました。取引はありません:(。
また、私のワークスペースには他のプロジェクトはありません。
この投稿にある解決策を試して、AFNetworking ファイルで ARC を無効にしましたが、役に立ちませんでした。
私が失敗しているアイデアはありますか?明らかに、答えは単純であるほど良いです。また、静的ライブラリを作成すると役立つ可能性があることも読みましたが、これは複雑に思えます。
編集
派生データを削除し、 Clean and BuildしてXcode を再起動しようとしました。取引はありません:(。
また、私のワークスペースには他のプロジェクトはありません。
奇妙なこと。-fno-objc-arc
いくつかの Facebook ファイルにフラグを追加しようとしたところ、プロジェクトが最終的にビルドされました。ここでの教訓は、Xcode がこれらのタイプのエラーを生成する場合、問題の原因は別のファイルにある可能性があるということだと思います。これは、すでにフラグを立てたファイルについて Xcode が不平を言っている場合に特に当てはまります。
うまくいけば、これは誰かに役立つでしょう:)。
「Convert to Objective-C ARC」はコード書き換えツールで、一方 -fno-objc-arc はコンパイル時のフラグです。リファクタリングの目的には関係ありません。
[チェック] をクリックする前に、ターゲットを拡張し、ARC を使用しないようにしたいファイルの選択を解除してください。
実は問題は簡単です。-fno-objc-arc
コンパイラ フラグ ダイアログで入力したフラグの後にキャリッジ リターンがないことを確認します。
ARC に準拠していないファイルによって.m
この状態になることができました。コンパイラは、タグ付けされている可能性があるインクルード ファイルについて不平を言います。インクルードを行っていた にフラグを立てる必要がありました。#imported
.m
-fno-objc-arc
.m
失敗したビルド出力を展開し、コンパイルに失敗したファイルを示す生のログを見て、これを発見しました (警告のファイルとは異なります)。
派生データ ファイルも削除する必要がありました。
同じ問題がありましたが、問題のあるファイルを見つけることができませんでした(Brottoのソリューションのように)。したがって、アーク以外の苦情コードスニペットを次の#ifステートメントブロックでラップするだけです。
#if !(__has_feature(objc_arc))
//...non-arc code
#endif
Refactor -> Convert to Objective-C ARC modal で非 ARC ファイルのチェックを外すことで問題を解決できました。「fno-objc-arc」フラグにより、ファイルはすでに除外されていましたが。ファイルのチェックを外すと、Xcode はより適切なエラーを吐き出し始め、修正が必要なファイルを見つけることができました。これらの変更を行った後、準備が整いました。