2013-09-21 17 views
10

Ich möchte einen Haskell-Code, der Netzwerk-Sachen beteiligt beinhaltet.Wie installiere ich Module in Haskell

ghc firewall.hs

Fehlermeldung

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

kann mir jemand sagen, wie Modul in Haskell zu installieren, wenn dieses Problem auf, dass in Zusammenhang steht.

Antwort

13

Das Tool cabal verarbeitet dies. In diesem Fall benötigen Sie:

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

Wenn Sie GHC nicht über die Sie Haskell-Plattform installieren dieses Tool nicht haben kann. Wenn ja, erhalten hier die Haskell Plattform: http://www.haskell.org/platform/

Um herauszufinden, welches Paket Sie für ein bestimmtes Modul benötigen, verwenden Sie das Suchfeld hier: http://hackage.haskell.org/packages/archive/pkg-list.html

In einigen Fällen ist die Antwort nicht eindeutig sein kann, wie zwei Pakete erlaubt sind um das gleiche Modul zu definieren.

4

Um Ganeshs Antwort zu erweitern, kümmern sich die meisten Leute, die ich kenne, nicht um die Haskell Platform, sondern installieren GHC und verwenden dann das Bootstrap-Skript von cabal-install.

mit wget (oder curl, wenn Sie bevorzugen):

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 

Danach ist es nur eine Frage der Verwendung von 'Kabale' Haskell-Pakete zu installieren.

cabal update 
cabal install http-enumerator 

Sie können dieses Paket und viele andere auf http://hackage.haskell.org sehen.