代码之家  ›  专栏  ›  技术社区  ›  Zartog

我怎样才能让msbuild完成一个相当于dcc32-b的delphi项目的完整构建?

  •  8
  • Zartog  · 技术社区  · 15 年前

    我怎样才能让msbuild完成一个相当于dcc32-b的delphi项目的完整构建?

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

    5 回复  |  直到 9 年前
        1
  •  10
  •   Community CDub    8 年前

    我相信是 /t:重建 ,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
    

    [注释,来自 this question ,对于版本“构建配置”,Delphi2009是 /p:config=Release 和Delphi2007是 /p:Configuration=Release ]

        2
  •  1
  •   Community CDub    8 年前

    我想是这个问题吧 Delphi MSBuild Build Configuraions From Command Line 包含答案。尝试

    msbuild /target:Build
    
        3
  •  0
  •   user215054    15 年前

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

        4
  •  0
  •   skamradt    15 年前

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

        5
  •  0
  •   Manos Nikolaidis Airsource Ltd    9 年前

    与我的RAD工作室2010专业, /t:rebuild 未定义。我想

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

    做这项工作

    推荐文章