Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在SWI Prolog中更改包目录_Prolog_Swi Prolog - Fatal编程技术网

如何在SWI Prolog中更改包目录

如何在SWI Prolog中更改包目录,prolog,swi-prolog,Prolog,Swi Prolog,我试图在SWI Prolog中安装软件包(sldnfdraw),但找不到指定安装目录的方法(即我希望安装它的位置) 这似乎表明可以选择包目录,但我没有这样做的运气。诚然,我对Prolog还相当陌生,可能忽略了一些显而易见的东西。尽管如此,我还是在所有常见的地方(堆栈溢出、文档)搜索了答案,但运气不佳 我试图通过调用pack\u install(sldnfdraw)来安装包sldnfdraw。这将在$HOME/lib/swipl/pack创建一个目录。然后,我尝试了不同版本的pack\u安装(sl

我试图在SWI Prolog中安装软件包(sldnfdraw),但找不到指定安装目录的方法(即我希望安装它的位置)

这似乎表明可以选择包目录,但我没有这样做的运气。诚然,我对Prolog还相当陌生,可能忽略了一些显而易见的东西。尽管如此,我还是在所有常见的地方(堆栈溢出、文档)搜索了答案,但运气不佳


我试图通过调用
pack\u install(sldnfdraw)来安装包
sldnfdraw
这将在
$HOME/lib/swipl/pack
创建一个目录。然后,我尝试了不同版本的
pack\u安装(sldnfdraw,$PREF\u DIR)。
其中
$PREF\u DIR
是我希望安装包的目录的绝对路径。文档引用了一些将选项传递给函数的方法,但没有指定这样做的方法。由于Prolog上可用的资源有限(以及这个具体的实现),我发现自己陷入了死胡同。希望有人能给我指出正确的方向。

指定安装目录的函数是
package\u directory/1
。为了将其与
pack\u install/2
结合使用,我需要将其括在括号中。因此,将包
sldnfdraw
安装到目录
$PREF_DIR
中的查询如下所示

pack_install(sldfndraw, [package_directory($PREF_DIR)]).

有趣的是:库:ProLoGa的包管理器另一个技巧是:在您想要的任何文件夹中下载包,然后创建一个指向默认包目录的符号链接