Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.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
本地安装与runhaskell一起使用的带有堆栈的软件包_Haskell_Haskell Stack - Fatal编程技术网

本地安装与runhaskell一起使用的带有堆栈的软件包

本地安装与runhaskell一起使用的带有堆栈的软件包,haskell,haskell-stack,Haskell,Haskell Stack,我正在开发许多小的haskell程序,我将其缩进以用作脚本文件。我的理想用例是堆栈runhaskell其中一个脚本。hs来运行它们 一些文件在hackage中使用对包的依赖,例如。因此,我收到一条错误消息,说 Could not find module `Text.Regex.Posix' Use -v to see a list of the files searched for. | 2 | import Text.Regex.Posix | ^^^^^^^^^^^^

我正在开发许多小的haskell程序,我将其缩进以用作脚本文件。我的理想用例是
堆栈runhaskell其中一个脚本。hs
来运行它们

一些文件在hackage中使用对包的依赖,例如。因此,我收到一条错误消息,说

    Could not find module `Text.Regex.Posix'
    Use -v to see a list of the files searched for.
  |
2 | import Text.Regex.Posix
  | ^^^^^^^^^^^^^^^^^^^^^^^
我考虑过两种选择:

  • 使用cabal包并在其中指定依赖项。我不喜欢这个解决方案,因为它(据我所知)用于我总是编译代码的工作流中。我想改用
    stack runhaskell

  • 抛开烟囱,直接使用阴谋集团,正如在这里对类似问题的回答中所建议的,所以:。我不喜欢这样,因为我希望在某个文件中明确列出所有依赖项


  • 从hackage本地安装软件包并使其可用于
    stack runhaskell
    的最简单方法是什么?

    您可能需要使用脚本解释器。对不起,回答太简单了,我正在打电话。以下是它的文档:


    您也可以只执行“stack build regex posix”,然后runhaskell就可以使用该包了。但是,这更容易出错,因为没有使用包隐藏,因此更难判断脚本实际依赖于什么

    脚本解释器可以满足我的需要,因为它会写出所有依赖项,因此我有版本控制下的依赖项。美好的非常感谢。