我遇到了一個模糊的錯誤,並在此發佈解決方案,希望它能幫助其他人解決同樣的問題。Delphi編譯錯誤F2048錯誤的單元格式
我寫用Delphi XE4確保一組Pascal源代碼文件將在舊版本的Delphi編譯一個持續集成(CI)的程序。此CI程序運行一系列批處理文件,每個批處理文件都運行舊版Delphi的命令行編譯器。運行XE編譯器的批處理文件將產生以下錯誤:
F2048 Bad unit format: 'c:\program files (x86)\embarcadero\rad studio\11.0\lib\Win32\release\System.dcu' - Expected version: 22.0 ... Found version: 25.0
注意預期的,發現版本不同(在這種情況下XE和XE4)。有幾個人報告類似的錯誤,預期和發現的版本是相同的 - 這通常是32位和64位DCU之間的混合,但這不是問題。
只有在CI程序從Delphi XE4 IDE內運行時纔會出現此問題。如果CI程序在IDE外部運行,它可以正常工作。