4

いくつかのプロジェクトで、いくつかのコンパイラ警告を生成するサードパーティ コードを使用しています。私は明らかに、積極的に更新されたサードパーティ プロジェクトのコードを調べたり変更したりしたくありません。

これにより、 MYコードの警告をかき消す多くの不要な警告が残ります。

いくつかのコンパイラ フラグを使用して、ファイルごとに特定の警告を抑制しましたが、10 ~ 20 の .m ファイルを含むオープン ソース コードにとっては面倒です。

Xcodeグループまたはファイルパスごとにすべての警告を表示する方法はありますか? または、誰かがより良い提案をしていますか?

(参考: LLVM 1.5 コンパイラを使用しています)

4

3 に答える 3

2

ファイルごとに警告をオフにするのは非常に簡単です。必要なのはコンパイラ フラグだけです。これがステップバイステップのプロセスです。

  1. Xcode で Project Navigator を開く
  2. ナビゲーターの最上部にあるプロジェクト アイコンをクリックします。
  3. 結果の詳細ペインで、作業しているターゲットを選択します
  4. 「ビルドフェーズ」を選択</li>
  5. 「ソースのコンパイル」を展開</li>
  6. リストで、関心のあるファイルを見つけます
  7. ファイルの横にある「コンパイラフラグ」列の下の列をダブルクリックします
  8. 結果のダイアログに -w を追加します
  9. [完了] をクリックします</li>
  10. 警告なしのプロジェクトをビルドする

ここに参照リンクがあります http://blog.bluelightninglabs.com/2011/12/suppressing-xcode-warnings-on-a-per-file-basis/

于 2012-05-10T07:56:21.363 に答える
2

私の経験では、XCode 3.x は最新のビルドで実際にコンパイルされたファイルの警告のみを表示するようです。そのため、プロジェクトをビルドし、1 つのファイルを変更してからプロジェクトを再度ビルドすると、変更されたファイルの警告。私は一般的に、これが良いことよりも害を及ぼすことを発見しました(特にObjective-Cでは、存在しないセレクターを呼び出すことは警告にすぎないためです!)-そしてありがたいことに、XCode 4で修正されました-しかし、あなたの場合は役に立つかもしれません。

ただし、さまざまな理由から、サードパーティのコードをフレームワークに入れることを検討する必要がある場合があります。これにより、警告が自動的に抑制されるわけではありませんが (抑制しやすくなる可能性があります)、サードパーティ コードがライブラリにコンパイルされたため、通常のコンパイル サイクルの一部ではなかったことを意味します。

于 2010-08-06T13:47:02.810 に答える
1

これは確かに簡単な解決策ではありませんが、これらのサードパーティ ライブラリを調べて、警告の原因となるバグを修正し、パッチを送信することができます。その後、警告がなくなり、バグが修正され、誰もが両方の改善を享受できるようになります.

(この方法でいくつの警告を潰すことができるかは、それらが何であるかによって異なります。ライブラリが古いバージョンの Mac OS X または iOS をサポートする必要がある場合、非推奨 API の警告は避けられない可能性があります。唯一の方法。)

于 2010-08-06T22:40:36.940 に答える