【发布时间】:2016-09-21 09:26:37
【问题描述】:
我刚刚安装了 Delphi 10.1 Berlin,但我遇到了库路径问题。在库路径中使用单元(至少有一些)时,Delphi 找不到它们,并给出 F2613 错误,“未找到单元 XXX”。
为了设置一个非常简单的测试,我创建了一个名为“SampleUnit.pas”的单元,其中包含一个函数(sum),将文件放在新创建的文件夹“C:\TempLibrary”中,并添加这个文件夹到Options->Delphi Options->Library->Library path。我检查了几次拼写,我完全确定一切都是正确的。然后我做了一个这样的控制台应用程序
program Project1;
{$APPTYPE CONSOLE}
{$R *.res}
uses
SampleUnit;
begin
writeln(Sum(12,13));
end.
并编译它。 Boom,“[dcc32 致命错误] Project1.dpr(9): F2613 Unit 'SampleUnit' 未找到。”
如果我用
替换有问题的行uses
SampleUnit in 'c:\templibrary\sampleunit.pas';
它工作得很好。在项目搜索路径中添加“C:\TempLibrary”也可以解决问题。
我错过了什么?这适用于以前版本的 Delphi,并且确实适用于 Berlin 版本的其他安装(我在虚拟机上进行了另一个安装,它运行良好)
我意识到这可能是我的设置存在的问题,其他人可能很难/不可能查明,但如果有人能提供任何关于我应该在哪里查看的见解,那就太好了。
更新:
问题已解决,但我不确定究竟是什么解决了它。我开始重新安装,并收到警告说我的系统路径的长度接近长度限制。我清理了系统路径(删除了对旧 RAD 工作室安装的引用等),然后重新安装了 Delphi 10.1 Berlin,现在一切正常。
【问题讨论】:
-
Library path: Specifies search paths where the compiler can find the required files for the package, such as .dcp and .bpi files. -
@LU RD:什么意思?你的意思是我所做的应该有效,还是不应该有效。我的单元 的路径 在库路径中,但它只是 .pas 文件。我是否需要为 .dcu 文件的放置位置设置一些参数并将 that 路径添加到我的库路径?
-
源文件(.pas、.dfm、*.inc 等)应进入项目搜索路径,除非您在项目文件中如示例中那样提供该路径。
-
在柏林之前,我使用 XE 7。我有一组单元保存在一个专用文件夹中,我在许多项目中都使用了这些单元。这工作得很好,无需将这些单元添加到每个项目文件中。您是说这种方法不再有效吗?我认为这就是 Delphi 中库路径的全部想法......
-
@SveinBringsli,太长的系统路径通常是错误的来源。每个版本的 Delphi 都在其中添加了很多东西,突然间你会遇到奇怪的错误。不要在问题中添加此信息,而是将其放在答案中。
标签: delphi