8

MSBuildにdcc32-bと同等のDelphiプロジェクトのフルビルドを実行させるにはどうすればよいですか?

ビルドしようとしているプロジェクトが2つあります。最初のプロジェクトでは、いくつかの条件付き定義を使用します。これらのプロジェクトは、msbuildを介してdcc32に渡されます。ただし、一部の一般的なユニットは、最初の条件セットでスタックしているように見えるため、2番目のプロジェクトは不適切に構築されています。

4

5 に答える 5

11

/t:rebuildだと思います。msbuild の出力には、すべての dcu の「ファイルの削除: ...」が表示され、プロジェクトがビルドされます。

Delphi 2007 と Delphi 2009 用に、バッチ ファイルを使用して msbuild を呼び出し、Delphi プロジェクトをビルドします ( %BDS%.

set DCC_Quiet=true
set BDS=%ProgramFiles%\CodeGear\RAD Studio\5.0
set MSBuildBinPath=%WinDir%\Microsoft.NET\Framework\v2.0.50727

call %MSBuildBinPath%\msbuild /nologo /t:rebuild /p:config=Release %1 %2 %3 %4 %5

[注、この質問から、リリース「ビルド構成」については、Delphi 2009 は/p:config=Release、Delphi 2007 は/p:Configuration=Release]

于 2009-11-21T01:19:25.237 に答える
1

Delphi MSBuild Build Configuraions From Command Lineという質問に答えが含まれていると思います。試す

msbuild /target:Build
于 2009-11-21T00:20:54.153 に答える
0

私が覚えているように、D7 では、GUI と dcc32 が異なるビルドを生成したときに、同様の問題がありました。dcc32.cfg ファイルの場所と内容を確認してください。実際には、必要な数の条件を含めることができます。1 行に 1 つの条件

于 2009-11-20T23:58:05.837 に答える
0

別のオプションは、最初のビルドが完了した後、次のビルドを開始する前に、コンパイルされたユニットの DCU を削除することです。

于 2009-11-21T00:06:45.800 に答える
0

私の RAD Studio 2010 Professional では、/t:rebuild定義されていません。私は理解した

MSBuild.exe /t:Build /p:config=Release;DCC_BuildAllUnits=true

仕事をします

于 2015-10-15T11:20:05.523 に答える