使用MSBuild自动化Delphi 2010项目构建

时间:2012-02-17 19:15:36

标签: delphi command-line msbuild compilation

我正在寻找使用MSBuild编译我的Delphi 2010项目,但有些事情是不对的,我无法让MSBuild编译我的项目。

我尝试了这个命令行:

  

“C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ msbuild.exe”“C:\ MyProject \ Myapp.dproj”/ t:发布

和此:

  

“C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ msbuild.exe”“C:\ MyProject \ Myapp.dproj”/ p:Configuration = Release / t:Release

但MSBuild无法识别我的构建配置!

我也改变了[ rsvars.bat ],但它没有用!

@SET BDS=C:\Program Files (x86)\Embarcadero\RAD Studio\7.0
@SET BDSCOMMONDIR=C:\Users\Public\Documents\RAD Studio\7.0
@SET FrameworkDir=C:\Windows\Microsoft.NET\Framework\v4.0.30319
@SET FrameworkVersion=v4.0.30319
@SET FrameworkSDKDir=
@SET PATH=%FrameworkDir%;%FrameworkSDKDir%;%PATH%
@SET LANGDIR=EN

MSBuild错误是:

C:\MyProject\Myapp.dproj : error MSB4057: The target "Release" does
not exist in the project.

任何有助于我使用MSBuild构建我的应用程序的帮助将不胜感激。

(是的,我完全了解像FinalBuilder这样的工具,我只是想学习如何用MSBuild做到这一点)

谢谢!

2 个答案:

答案 0 :(得分:13)

您需要切换参数。目标参数(/ t)告诉MSBuild要创建哪个目标。 这可以是'Make','Clean'或'Build'(或者这些的组合 - 在这种情况下用';'分隔它们。)

属性参数(/ p)将属性转发给实际的编译器。您可以使用/p:config=

指定配置

因此,如果您想使用发布配置清理然后构建项目,请指定以下参数:

msbuild.exe "/t:Clean;Build" "/p:config=Release" Myapp.dproj

答案 1 :(得分:0)

/p:Configuration=Release更改为/p:config=Release