0

Objective-Cの構文チェッカーはありますか?

試しgcc -fsyntax-onlyましたが、実際には「構文のみ」ではありません。外部フレームワークへの参照を持つ個々の実装ファイルで実行すると、エラーが発生します。

オブジェクトファイルをリンクまたは生成しようとせずに、個々のヘッダーまたは実装ファイルの構文チェックを実行できるものを探しています。

gcc私が知らない追加のフラグでこれを行うことができますか、またはこのタスクまでの別のツールがありますか?

コマンドラインからこれを実行したいと思います。xcodebuildは個々のファイルに対してこれを行うことができますか?プロジェクト全体に対してxcodebuildを実行して、1つのファイルの構文をチェックするのは少し大変です。

4

4 に答える 4

3

使用しているフレームワークのヘッダー ファイルを知らずに構文をチェックする方法はありません。関連するヘッダー ファイルをインクルードするには、-framework フラグを使用する必要があります。

于 2009-09-23T03:58:03.353 に答える
1

gccそのため、 man ページを調べた後、ヘッダー ファイルを検索する-Fディレクトリのリストにフレームワーク ディレクトリを追加できるフラグを発見しました。gcc

これは私の問題を解決します。

次のように使用します。gcc -fsyntax-only -ObjC -F/Path/To/A/Framework -F/Path/To/Another/Framework File.m

于 2009-09-23T11:40:13.817 に答える
1

特に 10.6/Xcode 3.2 を使用している場合は、代わりに clang -fsyntax-only を使用してみてください。Clang/LLVM では、パーサーとコンパイラ チェーンの他の部分との分離が大幅に改善されています。clang は /Developer/usr/bin にあります。

于 2009-09-23T00:00:44.087 に答える
0

Build->Compile (cmd-K) を使用して Xcode[1] で単一のファイルをコンパイルできます。これは実質的に構文チェックです (リンク手順はありません)。

[1] OS X (実際には Cocoa フレームワーク) なしで Objective-C を使用してもほとんど意味がないため、Xcode を使用していると思います。

于 2009-09-22T23:22:31.360 に答える