1363

私は自分のプロジェクトでARCをうまく使用しています。ただし、現在ARCのルールがもう少し壊れやすいファイル(単体テストやモックオブジェクトなど)に遭遇しました。このオプションを見つけることができませんでしたが、ファイルごとにARCを無効にする方法があったと聞いたことを思い出します。

これは可能ですか?ファイルごとにARCを無効にするにはどうすればよいですか?

4

18 に答える 18

2181

-fno-objc-arcこれらのファイルにコンパイラ フラグを追加することで、個々のファイルの ARC を無効にすることができます。

Targets -> Build Phases -> Compile Sources でコンパイラ フラグを追加します。Compiler Flagsの下の行の右側の列をダブルクリックする必要があります。cmd ボタンを押してファイルを選択し、Enter キーを押してフラグ編集ボックスを表示することで、複数のファイルに追加することもできます。(複数のファイルを編集すると、既に設定されているフラグが上書きされることに注意してください。)

例を含むサンプル プロジェクトを作成しました: https://github.com/jaminguy/NoArc

xcode

詳細については、この回答を参照してください: 一部のファイルの自動参照カウントを無効にする

于 2011-07-12T01:22:15.520 に答える
462

複数のファイルでARCを無効にします。

  1. Xcodeのターゲット/ビルドフェーズ/ソースのコンパイルで目的のファイルを選択します
  2. Enterキーを押します
  3. タイプ-fno-objc-arc
  4. EnterキーまたはDoneを押します

;)

ここに画像の説明を入力してください

于 2012-04-01T00:30:10.433 に答える
44

Xcode 4.3の場合、より簡単な方法は次のとおりです。編集/リファクタリング/目的のC ARCに変換し、変換したくないファイルをチェックします。この方法は、上記のコンパイラ フラグを使用する場合と同じです。

于 2012-07-18T22:28:26.170 に答える
37

個々のファイルを非円弧にするのは非常に簡単な方法です。

以下の手順に従います。

個々のファイルで ARC を無効にします。

  1. Xcode の Target/Build Phases/Compile Sources で目的のファイルを選択します

  2. NON-ARC にしたい .m ファイルを選択します Enter キーを押します-fno-objc-arc と入力します

非 ARC ファイルから ARC プロジェクトへのフラグ:-fno-objc-arc

ARC ファイルから非 ARC プロジェクトへのフラグ:-fobjc-arc

于 2013-07-05T05:55:49.580 に答える
35

注:多くのファイルで ARC を無効にする場合は、次のことを行う必要があります。

  1. 「ビルドフェーズ」を開く->「ソースのコンパイル」
  2. "left_mouse" + "cmd" (分割されたファイルの場合) または+ "shift" (グループ化されたファイルの場合 - 最初と最後を選択) でファイルを選択します
  3. 「入力」を押します
  4. ペースト-fno-objc-arc
  5. もう一度「入力」を押してください
  6. 利益!
于 2013-03-07T12:53:50.783 に答える
22

>の-fno-objc-arcフラグを使用するだけですBuild PhasesCompile Sources

于 2012-11-28T09:56:56.183 に答える
13

Xcode で特定のファイルの ARC (自動参照カウント) を無効にすることができます。

[ターゲット] -> [ビルド フェーズ] -> [ソースのコンパイル] -> [ファイルの選択] (ダブルクリック) -> [-fno-objc-arc] をポップアップ ウィンドウに追加します。

「到達可能性」ファイルを使用しているときに、この状況に遭遇しました。

これを下の図に示します。

ここに画像の説明を入力

于 2014-03-20T14:24:34.010 に答える
11

ビルド段階で各ファイルに -fno-objc-arc を使用します

于 2013-09-25T10:24:05.710 に答える
8

スクリーンショットに従って、-fno-objc-arcと入力してください。

ここに画像の説明を入力

于 2016-09-02T15:08:18.700 に答える
7

Unity を使用している場合、Xcode でこれを変更する必要はありません。Unity 内で、特定のファイルのメタデータにコンパイル フラグを適用できます。プロジェクト パネルでそれらを選択し、インスペクター パネルから適用するだけです。これは、Cloud Build を使用する予定がある場合に不可欠です。ここに画像の説明を入力

于 2015-10-18T21:37:55.697 に答える
5

フラグ「-fno-objc-arc」を追加。

簡単な手順に従います。アプリ > ターゲット > ビルド フェーズ > ソースのコンパイル > クラス「-fno-objc-arc」の後にフラグを追加</p>

于 2013-10-10T14:25:41.823 に答える
5

他のすべての回答は、MRC(手動参照カウント)を無効にし、ARC(自動参照カウント)を有効にする方法を説明していると思います。MRC (手動参照カウント) を使用するには、つまり、複数のファイルで ARC (自動参照カウント) を無効にします。

  1. Xcode の Target/Build Phases/Compile Sources で目的のファイルを選択します
  2. ENTERを押してください
  3. -fobjc-arc と入力します
  4. Enter または完了を押します
于 2015-12-30T10:46:36.060 に答える
-1

アプリに移動 -> 次にターゲット -> ビルド フェーズ -> ソースのコンパイル

次に、ARCを無効にするファイルを選択します

このスニペット「-fno-objc-arc」を貼り付けます。貼り付けたら、Enter キーを押します。

ARCを無効にする各ファイルで。

于 2015-02-24T10:03:34.577 に答える
-2

ARCを無効にするための次の手順

Xcode プロジェクトを選択します ターゲットに移動します ビルド フェーズ セクションを選択します ビルド フェーズ セクション内でコンパイル ソースを選択します。ARC を無効にしたくないファイルを選択し、-fno-objc-arc を追加します。

于 2015-03-09T07:25:38.950 に答える