我们说我有这2个套餐和1个应用程序:
C:\ P1 \ P1.dpk
C:\ P2 \ P2.dpk
C:\ App1 \ App1.dpr
P2使用P1。
App1使用P1和P2。
在Delphi XE下,我遵守P1并在' Tools->中添加了路径。选项 - >图书馆路径'。然后我为P2做了同样的事 此时App1将是可编译的(它将使用'库路径'来查找P1和P2的源代码)。不需要其他设置(搜索路径等)。
那只适用于Win32平台。现在,在Delphi XE7下,我还添加了Win64平台(适用于所有项目)。事情搞砸了。
我理解:
1.我需要为两个平台编译软件包
2.我只需要为Win32安装软件包(因为Delphi是32位应用程序)
3.我需要使用'。\ $(平台)\ $(配置)'在'所有配置/所有平台'在项目选项中,我可以将输出DCU放在4个不同的文件夹中(Debug 32,Debug 64,Release 32,Release 64)。
在App1的搜索路径中添加:' c:\ p1 \ $(平台)\ $(配置)'使它工作。但是......这意味着我必须为所有项目添加所有包路径??????
我的问题是我有超过2个包,正如我在上面的例子中所示(它更像P1到P10)。 在所有DPR项目的搜索路径中添加所有这些路径将是一个讨厌的解决方案。有一个更好的方法?也许就像在“图书馆路径”中添加路径一样?这样我的旧项目就可以像以前一样工作,而无需在搜索路径中设置其他字符串。
答案 0 :(得分:3)
更好的方法是在包中设置单位输出目录。编译选项;例如,将$(BDSCOMMONDIR)/MyPacks/$(Config)/$(Platform)
设置为所有包的单位输出目录,并将$(BDSCOMMONDIR)/MyPacks/$(Config)/$(Platform)
添加到默认项目的搜索路径。