Delphi编译错误F2048坏单位格式
我遇到了一个模糊的错误,并在此发布解决方案,希望它能帮助其他人遇到同样的问题.
我正在使用Delphi XE4编写持续集成(CI)程序,以确保在旧版本的Delphi下编译一组pascal源文件.此CI程序运行一系列批处理文件,每个文件运行较旧的Delphi版本的命令行编译器.运行XE编译器的批处理文件产生以下错误:
请注意,预期版本和找到的版本不同(在本例中为XE和XE4).有几个人报告了类似的错误,其中预期版本和发现版本相同 – 这通常是32位和64位DCU之间的混合,但这不是问题. 只有在Delphi XE4 IDE中运行CI程序时才会出现此问题.如果CI程序在IDE外部运行,则可以正常工作. 解决方法
XE4 IDE添加了几个由正在调试的程序(在本例中为CI)继承的环境变量,这些变量又由批处理文件继承.在批处理文件中运行时,其中一个额外的环境变量会混淆XE编译器.罪魁祸首是添加的BDSLIB环境变量,它指向XE4 lib目录.
解决方案是简单地添加
到每个批处理文件的开头.完成此更改后,CI程序将在IDE内部和外部成功运行. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |