Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.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
Haskell 我如何告诉gitit插件库在哪里? 短版_Haskell_Ghc_Haskell Stack - Fatal编程技术网

Haskell 我如何告诉gitit插件库在哪里? 短版

Haskell 我如何告诉gitit插件库在哪里? 短版,haskell,ghc,haskell-stack,Haskell,Ghc,Haskell Stack,我将gitit配置为使用其“Deprofanizer”插件,但当我运行它时,它失败了,它说: 加载插件“plugins/Deprofanizer.hs”。。。 插件/脱profanizer.hs:6:1:错误: 找不到模块“Network.Gitit.Interface” 使用-v查看搜索的文件列表。 | 6 |导入Network.gitt.Interface | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ gitit:加载插件时出错:plugins/Deprofanizer.

我将
gitit
配置为使用其“Deprofanizer”插件,但当我运行它时,它失败了,它说:

加载插件“plugins/Deprofanizer.hs”。。。
插件/脱profanizer.hs:6:1:错误:
找不到模块“Network.Gitit.Interface”
使用-v查看搜索的文件列表。
|
6 |导入Network.gitt.Interface
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
gitit:加载插件时出错:plugins/Deprofanizer.hs
显然,它找到了插件,但无法编译

我该如何解决这个问题

更详细的版本 我已根据安装,使用
堆栈安装
。如果我只运行
gitit
,它工作得很好:它创建它的
静态
目录,初始化它的数据库,并在端口5001上运行HTTP服务,就像广告中那样

但是我无法让插件工作,因为这似乎是一个纯粹与配置相关的问题

包含如何配置插件的说明:

插件:
#指定要加载的插件列表。可以指定插件
#通过其路径或模块名。如果插件名
#以Gitit.Plugin.开头,Gitit将假定插件是
#已安装的模块,将不会尝试查找源文件。
#示例:
#插件:plugins/DotPlugin.hs,大写emphasis plugin.hs
#插件:插件/DotPlugin
#插件:Gitit.Plugin.InterwikiLinks
默认配置不使用插件。gitit附带了几个插件,这里的说明似乎很清楚,因此我尝试通过将
插件配置更改为:

    plugins: plugins/Deprofanizer.hs
如样品所示。(举个例子。)

这几乎奏效了。当我启动gitit时,它确实在我期望的位置找到了脱丙纶模块,并尝试编译它。但是:

加载插件“plugins/Deprofanizer.hs”。。。
插件/脱profanizer.hs:6:1:错误:
找不到模块“Network.Gitit.Interface”
使用-v查看搜索的文件列表。
|
6 |导入Network.gitt.Interface
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
gitit:加载插件时出错:plugins/Deprofanizer.hs
Network.Gitit.Interface
模块实际上是Gitit发行版的一部分,我想它被编译成了我的
Gitit
可执行文件。但是我不知道为什么插件不能导入它,或者如何修复它。我在手册中找不到任何暗示这可能是个问题

我找到了代码(负责加载和编译插件模块:

loadPlugin pluginName=do
logM“gitit”警告(“加载插件”'++pluginName++“…”)
runGhc(Just libdir)$do
...
并检测它以写出
libdir
的值,即
/home/mjd/.stack/programs/x86_64-linux/ghc-8.6.5/lib/ghc-8.6.5
。这个目录存在,但我不知道如何处理它

问题是:

我该如何解决这个问题


我按照说明进行安装,并使用
stack install
进行安装。然后根据说明打开
Deprofanizer.hs
的插件,运行
gitit
,wiki页面打开得很好;没有错误消息。您可能需要提供更多详细信息,例如
stack/pro中的某个位置的操作系统、版本等grams
是一个名为
ghc-pkg
的可执行文件(
stack
本身可能愿意通过
stack-exec-ghc-pkg
为您运行它,而无需自己查找。)
ghc-pkg列表gitit
说明了什么?关于
ghc-pkg-check
的情况如何?可能由于某种原因,该库的安装没有按照您的预期进行。