10

この投稿にある解決策を試して、AFNetworking ファイルで ARC を無効にしましたが、役に立ちませんでした。

ここに画像の説明を入力

私が失敗しているアイデアはありますか?明らかに、答えは単純であるほど良いです。また、静的ライブラリを作成すると役立つ可能性があることも読みましたが、これは複雑に思えます。

編集

派生データを削除し、 Clean and BuildしてXcode を再起動しようとしました。取引はありません:(。

また、私のワークスペースには他のプロジェクトはありません。

4

7 に答える 7

16

奇妙なこと。-fno-objc-arcいくつかの Facebook ファイルにフラグを追加しようとしたところ、プロジェクトが最終的にビルドされました。ここでの教訓は、Xcode がこれらのタイプのエラーを生成する場合、問題の原因は別のファイルにある可能性があるということだと思います。これは、すでにフラグを立てたファイルについて Xcode が不平を言っている場合に特に当てはまります。

ここに画像の説明を入力

うまくいけば、これは誰かに役立つでしょう:)。

于 2012-05-30T15:56:32.840 に答える
3

「Convert to Objective-C ARC」はコード書き換えツールで、一方 -fno-objc-arc はコンパイル時のフラグです。リファクタリングの目的には関係ありません。

[チェック] をクリックする前に、ターゲットを拡張し、ARC を使用しないようにしたいファイルの選択を解除してください。

于 2013-02-22T17:15:36.587 に答える
2

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

于 2012-07-13T17:52:35.660 に答える
1

ARC に準拠していないファイルによって.mこの状態になることができました。コンパイラは、タグ付けされている可能性があるインクルード ファイルについて不平を言います。インクルードを行っていた にフラグを立てる必要がありました。#imported.m-fno-objc-arc.m

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

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

于 2012-12-14T01:43:54.167 に答える
0

同じ問題がありましたが、問題のあるファイルを見つけることができませんでした(Brottoのソリューションのように)。したがって、アーク以外の苦情コードスニペットを次の#ifステートメントブロックでラップするだけです。

#if !(__has_feature(objc_arc))

//...non-arc code

#endif
于 2012-10-23T23:54:04.780 に答える
0

Refactor -> Convert to Objective-C ARC modal で非 ARC ファイルのチェックを外すことで問題を解決できました。「fno-objc-arc」フラグにより​​、ファイルはすでに除外されていましたが。ファイルのチェックを外すと、Xcode はより適切なエラーを吐き出し始め、修正が必要なファイルを見つけることができました。これらの変更を行った後、準備が整いました。

于 2012-11-12T17:49:18.747 に答える