0

我正在尝试使用 interprolog 和 SWI prolog 建立一个环境,interprolog 需要 swi 的“pl”的位置,但我找不到它。我能找到的只是 swipl 或 plrc 并且不能与 interprolog 一起使用。如果我在终端中输入 pl(这应该运行 swi-prolog),它会说

bash: pl :command not found

但如果我输入

swipl

或者

序言

它运行 swiprolog 很好。

问题是 interprolog 需要 pl,我似乎找不到。

有人知道我该如何解决这个问题吗?

谢谢

4

3 回答 3

1
which swipl

会告诉你 swipl 二进制文件在哪里。

但是,您需要一些方法来使“pl”与“swipl”具有相同的含义

为此,您需要将 pl 别名为 swipl。

代码alias pl='swipl'将在 BASH 中执行此操作。

所以在别名之后,您可以从命令行启动 interprolog 并查看它是否有效。

于 2011-01-30T08:58:14.977 回答
1

我不确定你是否解决了。理想情况下,您应该这样做:

  • 打开runSWISPListener.sh.
  • 更改${SWI_BIN_DIRECTORY}/pl${SWI_BIN_DIRECTORY}/swipl

然后它将正常工作。

于 2011-02-17T20:51:57.960 回答
0

我是否理解您的问题,pl 是 prolog 软件的符号链接吗?检查pl可执行文件的位置,where pl或者您可能需要使序言源代码.pl可执行并在其顶部添加标题...

#!/bin/swiprolog -f

; Prolog代码在这里...

并使用chmod u+x some_file.pl. 然后当 bash 执行时,它会检查文件的最高位 '#! /bin/swiprolog -f',我使用'-f' 开关来表示将其传递给 prolog 解释器...检查您的文档...

希望这会有所帮助,最好的问候,汤姆。

于 2010-02-09T13:17:59.283 回答