9

を無効にするには働いていない私は、ファイルをAFNetworkingでARCを無効にするthe solution found in this postを試みたが、無駄にしている:-fno-にObjCアークARC

enter image description here

私は失敗しています任意のアイデア?明らかに答えが単純な方が良いでしょう。静的ライブラリを作成すると助けになることもありますが、これは複雑に思えます。

EDITS

私は得られたデータを削除クリーンを試してみましたが、とXcodeを再起動を構築してきました。私はここでの教訓は、ということですね。何の取引:(。

また、私のワークスペース内の他のプロジェクト。

+1

困惑。それはそのまま動作するはずです。私は派生データを削除し、Xcodeを再起動します(愚かですが、Xcodeは賢明です)。 – Jano

+0

あるターゲットのフラグを設定し、もう一方のターゲットをビルドすることはできますか? – lawicko

+0

これはあなたのXcodeの問題には答えませんが、私たちのチームは最近[CocoaPods](http://cocoapods.org/)を使用して依存関係を管理し始めています。私はAFNetworkingを使用していませんが、あなたのプロジェクトにAFNetworkingを構築するための仕様があります。 –

答えて

16

奇妙なことがないの。私はいくつかのFacebookのファイルに-fno-objc-arcフラグを追加しようとしたんやプロジェクトは最終的に構築されましたXcodeのは、これらのタイプのエラーが発生したときに、問題の原因は、他のファイルであってもよい。Xcodeのは、あなたが既にフラグが付けられているファイル文句を言っている場合、これは特にそうかもしれません!

enter image description here

がうまくいけば、これはとなります誰かへの助けの:)。

+3

私は同じ問題を抱えています。どのように問題を引き起こしたFBファイルであることを知ったのですか? – Jason

2

実際問題は簡単です。コンパイラフラグダイアログに入力した-fno-objc-arcフラグの後にキャリッジリターンがないことを確認してください。

+0

パーフェクト。正確に私の問題。 – malaki1974

+0

クールチャプ!それは働いて+1 –

0

同じ問題がありましたが、問題のファイルを見つけることができませんでした(Brottoのソリューションのように)。だから、単純に次の#if文ブロック内の非円弧苦情のコードスニペットをラップ:

#if !(__has_feature(objc_arc)) 

//...non-arc code 

#endif 
0

私はリファクタリングに非ARCファイルをオフにして、私の問題を修正することができました - >のObjective-C ARCに変換モーダル。たとえファイルが 'fno-objc-arc'フラグのためにすでに取り消されていたとしても。一度ファイルをチェック解除すると、Xcodeはより良いエラーを吐き出し始め、いくつかの修正が必要なファイルを見つけることができました。それらの変更を行った後、私は行きました。

1

.mファイルで#imported.mのARCに準拠していないファイルがこの状態になりました。コンパイラはインクルードされたファイルについて文句を言います。ファイルには-fno-objc-arcというタグが付いています。私は含むことをしていた.mにフラグを立てなければならなかった。

これは、コンパイルに失敗したファイルを示している生ログ(失敗したファイル)をビルド出力を展開することで検出しました(警告のものとは異なります)。

また、派生データファイルを削除する必要がありました。

3

"Convert to Objective-C ARC"はコード書き換えツールですが、-fno-objc-arcはコンパイル時フラグです。リファクタリングの目的には無関係です。

[チェック]をクリックする前に、ターゲットを使い果たし、ARCフリーにしたいファイルの選択を解除します。

4

ほんの少しの追加ヒント:

あなたがそれらのすべてにコンパイラフラグ-fno-objc-arcを追加した場合は、プロジェクトのチェックで複数のターゲットを持っている場合。

関連する問題