簡體   English   中英

如何使用從Embarcadero Makefile調用的MSBuild編譯Delphi項目組

[英]How to compile a Delphi projectgroup using MSBuild called from an Embarcadero Makefile

我正在嘗試從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 ...

(你必須明顯調整路徑。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM