gpt4 book ai didi

delphi - 如何使用从 Embarcadero Makefile 调用的 MSBuild 来编译 Delphi 项目组

转载 作者:行者123 更新时间:2023-12-03 15:24:22 24 4
gpt4 key购买 nike

我正在尝试编译 Virtual Treeview 中的两个组件(VirtualTreesR.bpl 和 VirtualTreesD.bpl),我将它们合并到一个名为 VirtualTrees.groupproj 的 Delphi 项目组中。它们应该使用 MSBuild 进行编译,但此调用是通过 (Embarcadero) Makefile 完成的。 Makefile 中的相关部分如下所示:

msbuild.exe /nologo /v:m /t:build /p:Config=Release "$(VTVDIR)\Packages\Delphi 2010\VirtualTrees.groupproj"

不幸的是,这会导致 MSB4040,因为环境变量 BDS 不是在 cmd.exe 中设置的,而是在 Makefile 中设置的。我在调用 msbuild 之前尝试了 SET BDS=$(BDS) ,但无济于事。我还尝试将 BDS 设置为属性(/p:BDS=($BDS);Config=Release),这导致了另一个错误(例如:无法在 %BDS%\bin\dcc32.exe 找到编译器)。

来自 Makefile 的此调用是在 CI 服务器上构建我们的产品的准备工作的一部分,我不能保证在那里设置了 BDS 变量。那么我怎样才能将Makefile中的BDS变量提供给msbuild以使其接受它呢?

最佳答案

在我的批处理文件中,我使用 rsvars.bat:

call "C:\Program Files (x86)\CodeGear\RAD Studio\5.0\bin\rsvars.bat"
MSBuild SomeProject.dproj ...

(显然你必须调整路径。)

关于delphi - 如何使用从 Embarcadero Makefile 调用的 MSBuild 来编译 Delphi 项目组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5633221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com