如何不使用使用它的应用程序每次重新编译已安装的软件包?

RSE*_*RSE 4 delphi delphi-ide

当我在 IDE 中安装一个包并在项目中使用它时,每次编译我的项目时都会重新编译它(替换 DCU)。

我无法想象这是故意的 - RTL 和 VCL 也不是每次都编译,是吗?

我对工具> 选项> 环境选项> Delphi 选项> 库中的路径进行了一些操作,但没有成功。

我发现了一种结构,它允许编译我的项目,而无需重新编译在不同路径中具有 DCU 和 PAS 的包,但在此结构中,Delphi 根本无法从代码编辑器(例如按住 SHIFT 单击)中找到源代码,因此这不是一个选择。

Jen*_*off 6

为避免重新编译,您必须为.dcu文件和.pas文件设置单独的文件夹。

通常这是通过在库中包含的包中设置输出目录来完成的。您构建包,它将.dcu在与源文件夹不同的输出文件夹中生成文件。

要使用该软件包,您可以:

  • 必须将库路径指向输出文件夹(带有编译.dcu文件)。
  • 可以选择将搜索路径指向源文件夹(包含.pas文件)。

.dfm包中还有文件时,这会变得更复杂一些。

.pas编译器在库路径中看到的每个文件都会重新编译。(实际上只是最后一个实例,因为您可以在库路径中列出的不同目录中拥有相同的单元)。

要启用 CTRL-click 等 IDE 功能,您必须{$Y+}在包中设置编译器开关,这可以在 IDE 编译选项中完成:

http://docwiki.embarcadero.com/RADStudio/XE4/en/Compiling#Debugging_Options