FPC IDE:找不到单位系统

问题描述 投票:0回答:3

我刚刚安装了 FPC 3.2.0(在 Linux Mint 19.3 上)并尝试使用 FPC IDE。我从

bin
安装子文件夹启动IDE作为
./fp
,在IDE中编写了一个最简单的程序

program hello;

begin
  writeln('hello');
end.

将程序保存为

hello.pas
,当我编译它时,我得到了

(3,1) Fatal: Can't find unit system used by hello
(0) Fatal: Compilation aborted

这很奇怪,因为

system
是编译器的单位,而不是用户的单位。

我尝试用谷歌搜索这个问题,在不同的论坛上找到了几篇帖子,其中一个问题可以追溯到 2007 年,并且没有问题得到解答。

哪里有办法解决这个问题,或者FPC IDE已经死了大约15年了?

freepascal
3个回答
5
投票

在选项->目录->单元目录中检查单元目录。

包配置应该放一行像

/usr/lib/fpc/$FPCVERSION/units/$FPCTARGET/*

美元值是内置的(分别是 3.2.0 和 i386-linux 或 x86_64-linux)。请验证带有预建 .ppu .o 的目录是否存在。


1
投票

尝试修复您的 FPC 安装,或者您可以通过调用 fpcmkcfg 手动修复它

fpcmkcfg -d“basepath =路径/到/fpc/3.3”-o路径/到/fpc.cfg

例如,如果编译器位于 /usr/local/bin 中,它将查找 /usr/local/etc.


0
投票

在 Ubuntu 20.04 上也有同样的问题。为了解决这个问题,我必须在项目文件夹中创建文件 fp.cfg,其中包含以下内容:

-Fu/usr/lib/x86_64-linux-gnu/fpc/$fpcversion/units/$fpctarget
-Fu/usr/lib/x86_64-linux-gnu/fpc/$fpcversion/units/$fpctarget/*

如果这不起作用,则意味着您系统上的单元路径不同。你可以使用类似的东西

dpkg -L fp-units-base-3.0.4 | grep .ppu

找出单位实际存储的位置。将 3.0.4 替换为您实际的 Free Pascal 版本。如果您不知道确切的版本,请使用

sudo apt install apt-show-versions
apt-show-versions fpc

它会显示类似的内容

fpc:all/focal 3.0.4+dfsg-23 uptodate

3.0.4是您需要的版本号。

获取所需路径的另一种方法是运行此命令:

cat /etc/fpc.cfg | grep -- -Fu | head -2

所以你可以直接跑

cat /etc/fpc.cfg | grep -- -Fu | head -2 > fp.cfg

在您的项目文件夹中解决问题。

© www.soinside.com 2019 - 2024. All rights reserved.