繁体   English   中英

我怎样才能让 MSBuild 完全构建一个相当于 dcc32 -b 的 Delphi 项目?

[英]How can I get MSBuild to do a full build of a Delphi project equivalent to dcc32 -b?

我怎样才能让 MSBuild 完全构建一个相当于 dcc32 -b 的 Delphi 项目?

我有两个我正在尝试构建的项目,第一个使用一些条件定义,这些定义通过 msbuild 传递到 dcc32。 但是,一些常见的单元似乎被第一组条件卡住了,因此第二个项目构建不当。

我相信它是/t:rebuild ,msbuild 输出为所有 dcu 列出“正在删除文件:...”,然后构建项目。

我使用批处理文件调用 msbuild 来构建 Delphi 项目,适用于 Delphi 2007 和 Delphi 2009(只是%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 ]

我猜问题Delphi MSBuild Build Configuraions From Command Line包含答案。 尝试

msbuild /target:Build

我记得在 D7 中,当 GUI 与 dcc32 产生不同的构建时,也有类似的问题。 查看 dcc32.cfg 文件的位置和内容。 它们实际上可以包含您需要的任意数量的条件。 每行一个条件

另一种选择是在第一个构建完成后和开始下一个构建之前删除已编译单元的 DCU。

我的 RAD Studio 2010 Professional 没有定义/t:rebuild 我估计

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

做这份工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM