为 x64 项目设置路径
Setting path for x64 projects
假设我有这 2 个软件包和 1 个应用程序:
C:\P1\P1.dpk
C:\P2\P2.dpk
C:\App1\App1.dpr
P2 使用 P1。
App1 使用 P1 和 P2。
在Delphi XE下我编译了P1并在'Tools-> Options-> Library path'中添加了它的路径。然后我对P2做了同样的事情。
此时 App1 将是可编译的(它将使用 'Library path' 找到 P1 和 P2 的源代码)。不需要其他设置(搜索路径等)。
那只适用于 Win32 平台。现在,在 Delphi XE7 下,我还添加了 Win64 平台(对所有项目)。事情真的搞砸了。
我了解到:
1.我需要编译两个平台的包。
2. 我只需要为 Win32 安装包(因为 Delphi 是一个 32 位应用程序)。
3. 我需要在项目选项的 'All configurations/All platforms' 中使用 '.\$(Platform)\$(Config)',这样我就可以在 4 个不同的文件夹(Debug 32、Debug 64、Release 32、Release)中获取输出 DCU 64).
将此添加到 App1 的搜索路径中:'c:\p1$(Platform)$(Config)' 使其工作。但是......这意味着我必须将所有包路径添加到我的所有项目中?????
我的问题是我有超过 2 个包,如上例所示(更像是 P1 到 P10)。
在所有 DPR 项目的搜索路径中添加所有这些路径将是一个令人讨厌的解决方案。有一个更好的方法?也许喜欢在 'Library path' 中添加路径?这样我的旧项目将像以前一样工作,而无需在 'Search path'.
中设置额外的字符串
更好的方法是在包的编译选项中设置单元输出目录;例如,将 $(BDSCOMMONDIR)/MyPacks/$(Config)/$(Platform)
设置为所有包的单元输出目录,并将 $(BDSCOMMONDIR)/MyPacks/$(Config)/$(Platform)
添加到默认项目的搜索路径。
假设我有这 2 个软件包和 1 个应用程序:
C:\P1\P1.dpk
C:\P2\P2.dpk
C:\App1\App1.dpr
P2 使用 P1。
App1 使用 P1 和 P2。
在Delphi XE下我编译了P1并在'Tools-> Options-> Library path'中添加了它的路径。然后我对P2做了同样的事情。
此时 App1 将是可编译的(它将使用 'Library path' 找到 P1 和 P2 的源代码)。不需要其他设置(搜索路径等)。
那只适用于 Win32 平台。现在,在 Delphi XE7 下,我还添加了 Win64 平台(对所有项目)。事情真的搞砸了。
我了解到:
1.我需要编译两个平台的包。
2. 我只需要为 Win32 安装包(因为 Delphi 是一个 32 位应用程序)。
3. 我需要在项目选项的 'All configurations/All platforms' 中使用 '.\$(Platform)\$(Config)',这样我就可以在 4 个不同的文件夹(Debug 32、Debug 64、Release 32、Release)中获取输出 DCU 64).
将此添加到 App1 的搜索路径中:'c:\p1$(Platform)$(Config)' 使其工作。但是......这意味着我必须将所有包路径添加到我的所有项目中?????
我的问题是我有超过 2 个包,如上例所示(更像是 P1 到 P10)。 在所有 DPR 项目的搜索路径中添加所有这些路径将是一个令人讨厌的解决方案。有一个更好的方法?也许喜欢在 'Library path' 中添加路径?这样我的旧项目将像以前一样工作,而无需在 'Search path'.
中设置额外的字符串更好的方法是在包的编译选项中设置单元输出目录;例如,将 $(BDSCOMMONDIR)/MyPacks/$(Config)/$(Platform)
设置为所有包的单元输出目录,并将 $(BDSCOMMONDIR)/MyPacks/$(Config)/$(Platform)
添加到默认项目的搜索路径。