1

.re ファイル (re2c) を処理するためのカスタム ルールを含む Xcode プロジェクトと、プロジェクト内の一連の入力ファイルがあります。これらの入力ファイルには相互に依存関係があります。たとえば、file2.re は file1.re を最初に処理する必要があります。

私の問題は次のとおりです。

プロジェクトの [Build Phases] タブの [Compile Sources] セクションで順序を正しく設定しても、.re ファイルは任意の順序でコンパイルされます。これは回避できます。生成されたすべてのファイルが生成される前に、ビルドを複数回実行できます。

しかし、プロジェクトをアーカイブしようとすると、Xcode は常にクリーン リビルドを実行するため、生成されたファイルは毎回削除され、依存関係の問題により、ビルドがまったく成功しません。

私の質問は: 単一のターゲットで、カスタム ルールを使用してビルドされたファイル間の依存関係を指定する方法、またはビルドの順序を指定する方法はありますか?

4

1 に答える 1

0

回避策を見つけました。この問題は、カスタム ルールが並行して実行されているために発生するため、明らかに「ランダムな」実行順序になります。同時ビルド数を 1 に設定すると、問題は発生しなくなりますが、もちろん、ビルドは大幅に遅くなります。セラヴィ。

同時ビルドを 1 に設定するコマンド:

defaults write com.apple.dt.Xcode IDEBuildOperationMaxNumberOfConcurrentCompileTasks 1
于 2012-05-18T18:09:39.790 に答える