在Delphi工程的編譯,以下錯誤是由編譯器給出:的Delphi XE - 致命:找不到F1027單位: 'System.pas' 或二進制等效(.dcu)
致命:F1027單位未找到: 'System.pas'或二進制等效(.dcu)
只有在使用TFS構建系統構建msbuild時纔會發生這種情況。
當通過命令行執行時可以正常工作,如下所示。
命令:C:\ WINDOWS \ Microsoft.NET \ Framework64 \ V2.0.50727 \ msbuild.exe E:\ SRC \項目\ sample.groupproj/V:M/T:編譯/ P:配置=釋放
通過的MSBuild以下執行失敗:
<Exec Command="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\msbuild.exe E:\Src\Project\Sample.groupproj /v:m /t:Build /p:Config=Release"/>
注:以下ENV變量被設置:BDS,BDSLIB,BDSCOMMONDIR,BDSINCLUDE
當通過CCNET dcc32.exe執行具有額外的參數,如 - I,-LE,-LN,-O,-R,-U,-NB,-NH,但執行通過TFS沒有這些參數列表。
有關如何解決這些錯誤的任何想法。
在此先感謝...
假設你已經運行RSVars.Bat,你還需要確保你的DCC32配置有正確的路徑。 MSBuild僅啓動DCC32。嘗試使用DCC32構建命令行。一旦你有這個工作,你可以嘗試使用MSBuild。 –
@Andy_D是在運行msbuild exec任務之前運行RSVars.bat。在啓動cmd提示符並執行該命令時可以正常工作。當命令封裝在msbuild exec任務中並通過TFS構建系統運行時,會顯示錯誤。 – Santhosh
因此,您運行命令提示符,調用RSVars.Bat然後運行DCC32,它編譯正確嗎?您可能需要在項目級別(即在您的DProj文件中)明確設置庫路徑。 –