【发布时间】:2021-04-15 00:41:13
【问题描述】:
长话短说,我想要一些关于让 Haskell 在 Archlinux 上工作的(最佳)方式的指导。
工作我的意思是,就ghci 命令行工具而言,安装我没有的软件包 - 例如vector-space,this answer 是我的一个问题指 - 以及 Haskell 顽固的学习者可能需要的任何其他内容。
Archlinux wikipage on Haskell 列出了三个(替代?)包以使 Haskell 在系统上运行,即ghc、cabal-install 和stack。我在我的系统上安装了第一个和第三个,但我想我一定是后来安装了后者(除非它是 ghc 的依赖项)同时篡改(可能与 Vim as a Haskell IDE 有关)。此外,我安装了大量的haskell-* 软件包(为什么?谁知道呢?作为一个学习者,我一定来过很多次,说呃,让我们试试这个!)。 p>
- 这些软件包各有优缺点吗?
- 它们都可以在有/没有冲突的情况下使用吗?
- 它们中的任何一个是否会使其他任何东西变得多余?
- 根据我所写的内容,我还应该注意哪些我似乎不知道的事情?
【问题讨论】:
-
ghc只是编译器;cabal是一个构建工具,stack是围绕cabal构建的工具,其中包括一个精选的包存储库。它们不是相互排斥的。 -
@chepner,根据您的评论,我推断
cabal是stack的依赖项,但我的系统上安装了后者,而不是前者。我错过了什么吗? -
许多发行版的标准 Haskell 包通常有点陈旧。如果你可以不使用标准包管理器,也许你可以试试 ghcup haskell.org/ghcup
-
@Enlico Stack 依赖于 Cabal(库),但不依赖于 cabal-install(命令行工具,通常简称为“Cabal”)。有关更多详细信息,请参阅this answer of mine。
标签: haskell ghc cabal archlinux haskell-stack