IDE:Delphi 6 Professional.
我们有大项目.
我无法使用项目组来构建它们,因为我在执行此操作时遇到了OM错误和奇怪的文件错误.
我的想法是我将使用DCC32.exe之前我与命令行参数(dcc32.cfg)打架,但我认为我解决了它...
今天我尝试用它来编译项目,但是在第一个项目中我遇到了错误.
chdir c:\ d\anyproject dcc32 -b any.dpr
错误报告我没有找到一个单位.我试图在Delphi中编译,但它很成功.
所以我检查了问题.为什么以前的项目建筑成功,为什么这不是......?
然后我意识到这个dpr正在使用对子目录的引用,但不是所有添加到项目中的文件,其中更多是通过项目的"搜索路径"链接的.
但如果这是真的,那么这意味着DCC32没有使用项目的DOF/CFG文件!
所以问题是Delphi合并了所有内容以提供结果.它合并了全局搜索路径,项目的编译器指令,搜索路径,所有内容,以及使用项目的条件指令.
如果我理解得很好,DCC32不使用,只有dcc32.cfg,我必须合并所有的编译,这是一个不可能的工作,因为我需要编写一个解析器,解释项目的参数,并合并用全局变量.
或者我误解了一些问题,问题是由我错过的其他事情引起的?
我在等你的建议!
感谢所有想法,链接,信息等.
来自以下地方的dcc32选项:
我按顺序增加优先顺序.因此,源代码中指定的选项始终会覆盖创建dcc32.cfg文件的设置,或者在命令行上.
dcc32.exe将选择它首先找到的dcc32.cfg文件.它首先在当前目录中查找.
所有这一切意味着您负责从.dof文件获取设置,并从IDE进入命令行编译环境.
这是您应该升级的众多原因之一.现代Delphi版本使用msbuild进行命令行编译,并且很容易确保命令行构建与IDE构建相同.
当您观看正在进行的msbuild时,您将看到它导致调用dcc32.exe,并在命令行中指定了所有选项.将项目设置转换为对dcc32.exe的调用是您现在面临的问题.在Delphi 6中,您必须自己完成.在现代的Delphi中,这些工具是产品的一部分.
| 归档时间: |
|
| 查看次数: |
3561 次 |
| 最近记录: |