18

我想运行一个涉及网络内容的haskell代码。

ghc防火墙.hs

错误信息

firewall.hs:1:8:
    Could not find module `Network.HTTP.Enumerator'
    Use -v to see a list of the files searched for.

如果这个问题与此有关,谁能告诉我如何在haskell中安装模块。

4

2 回答 2

20

cabal工具处理此问题。在这种情况下,您需要:

cabal update # to download the latest package list if not done recently
cabal install http-enumerator

如果你没有通过 Haskell 平台安装 GHC,你可能没有这个工具。如果是这样,请在此处获取 Haskell 平台:http ://www.haskell.org/platform/

要找出特定模块所需的包,请使用此处的搜索框:http: //hackage.haskell.org/packages/archive/pkg-list.html

在某些情况下,答案可能不明确,因为允许两个包定义相同的模块。

于 2013-09-21T20:31:24.733 回答
7

7年后编辑。使用https://haskell.org/ghcup的 ghcup 这可以安装 cabal-install 和 GHC。

旧答案:为了增加 Ganesh 的答案,我认识的大多数人都不会使用 Haskell 平台,而是安装 GHC,然后使用 cabal-install 的引导脚本:

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh
export PATH=$PATH:$HOME/.ghcup/bin

使用 wget(或 curl,如果您愿意):

wget http://hackage.haskell.org/packages/archive/cabal-install/1.18.0.1/cabal-install-1.18.0.1.tar.gz
tar xzf cabal-install-1.18.0.1.tar.gz
cd cabal-install-1.18.0.1
sh ./bootstrap.sh
export PATH=$PATH:$HOME/.cabal/bin

之后,只需使用 'cabal' 安装 Haskell 软件包即可。

cabal update
cabal install http-enumerator

您可以在http://hackage.haskell.org上看到这个包和许多其他包。

于 2013-09-21T22:20:02.207 回答