加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Delphi编译错误F2048坏单位格式

发布时间:2020-12-15 04:17:56 所属栏目:大数据 来源:网络整理
导读:我遇到了一个模糊的错误,并在此发布解决方案,希望它能帮助其他人遇到同样的问题. 我正在使用Delphi XE4编写持续集成(CI)程序,以确保在旧版本的Delphi下编译一组pascal源文件.此CI程序运行一系列批处理文件,每个文件运行较旧的Delphi版本的命令行编译器.运行X
我遇到了一个模糊的错误,并在此发布解决方案,希望它能帮助其他人遇到同样的问题.

我正在使用Delphi XE4编写持续集成(CI)程序,以确保在旧版本的Delphi下编译一组pascal源文件.此CI程序运行一系列批处理文件,每个文件运行较旧的Delphi版本的命令行编译器.运行XE编译器的批处理文件产生以下错误:

F2048 Bad unit format: ‘c:program files (x86)embarcaderorad studio11.0libWin32releaseSystem.dcu’ – Expected version: 22.0 … Found version: 25.0

请注意,预期版本和找到的版本不同(在本例中为XE和XE4).有几个人报告了类似的错误,其中预期版本和发现版本相同 – 这通常是32位和64位DCU之间的混合,但这不是问题.

只有在Delphi XE4 IDE中运行CI程序时才会出现此问题.如果CI程序在IDE外部运行,则可以正常工作.

解决方法

XE4 IDE添加了几个由正在调试的程序(在本例中为CI)继承的环境变量,这些变量又由批处理文件继承.在批处理文件中运行时,其中一个额外的环境变量会混淆XE编译器.罪魁祸首是添加的BDSLIB环境变量,它指向XE4 lib目录.

解决方案是简单地添加

set BDSLIB=

到每个批处理文件的开头.完成此更改后,CI程序将在IDE内部和外部成功运行.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读