Je n'arrive pas à obtenir quelques packages Haskell à installer sur mon Mac (10.6.8). J'ai d'abord essayé Happstack et il a échoué, puis j'ai essayé Snap.
Parfois, lorsque je lance ghci, j'obtiens un défaut de segmentation.
D'autres fois, cela fonctionne et se passe comme suit:
GHCi, version 7.4.2: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Prelude>
Lorsque vous essayez d'obtenir Snap:
....
....
....
Loading package vector-0.10.0.1 ... linking ... done.
Loading package zlib-0.5.4.0 ... linking ... done.
Loading package zlib-bindings-0.1.1.3 ... linking ... done.
Loading package zlib-enum-0.2.3 ... linking ... done.
Loading package snap-core-0.9.3.1 ... linking ... done.
Loading package snap-server-0.9.3.3 ... linking ... done.
Loading package directory-tree-0.11.0 ... linking ... done.
cabal: Error: some packages failed to install:
snap-0.11.2 failed during the building phase. The exception was:
ExitFailure 11
J'ai vu ce problème plusieurs fois mais rien ne l'a vraiment résolu pour moi. Des idées?
Avez-vous essayé d'utiliser homebrew ? Il gère les dépendances pour vous. Je suis sous Mac OS X 10.7.5, mais ces instructions devraient fonctionner pour vous.
En utilisant homebrew, vous pouvez installer haskell-platform en utilisant la commande brew. Cela prendra un moment. L'étape de compilation pour haskell-platform a pris 15 minutes.
$ brew search haskell
haskell-platform
$ brew install haskell-platform
==> Installing haskell-platform dependency: ghc
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/ghc-7.4.2.lion.bottle.1.tar.gz
######################################################################## 100.0%
==> Pouring ghc-7.4.2.lion.bottle.1.tar.gz
==> Caveats
This brew is for GHC only; you might also be interested in haskell-platform.
==> Summary
???? /usr/local/Cellar/ghc/7.4.2: 5176 files, 767M
==> Installing haskell-platform
==> Downloading http://lambda.haskell.org/platform/download/2012.4.0.0/haskell-platform-2012.4.0.0.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/haskell-platform/2012.4.0.0 --enable-unsupported-ghc-version
==> make install
==> Caveats
Run `cabal update` to initialize the package list.
If you are replacing a previous version of haskell-platform, you may want
to unregister packages belonging to the old version. You can find broken
packages using:
ghc-pkg check --simple-output
You can uninstall them using:
ghc-pkg check --simple-output | xargs -n 1 ghc-pkg unregister --force
==> Summary
???? /usr/local/Cellar/haskell-platform/2012.4.0.0: 952 files, 208M, built in 15.3 minutes
Une fois installé, vous devriez pouvoir exécuter:
$ ghc
ghc: no input files
Usage: For basic information, try the `--help' option.
Ainsi que l'interprète Haskell, ghci:
$ ghci
GHCi, version 7.4.2: http://www.haskell.org/ghc/ :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Prelude> putStrLn "Hello World"
Hello World
Prelude>
Leaving GHCi.
J'espère que cela t'aides!
brew install haskell-platform
n'est plus pris en charge. Vous voudrez peut-être
Erreur: aucune formule disponible pour la plateforme haskell
Nous ne proposons plus de plate-forme haskell. Pensez à installer ghc et cabal-install à la place:
brew install ghc cabal-install
Puisque haskell-platform
sur homebrew pour Mac est obsolète, vous pouvez utiliser brew install ghc cabal-install
au lieu. Je l'ai fait sur Yosemite et cela a pris environ une minute…
> $ brew install ghc cabal-install
==> Downloading https://homebrew.bintray.com/bottles/ghc-7.10.1_1.yosemite.bottl
######################################################################## 100.0%
==> Pouring ghc-7.10.1_1.yosemite.bottle.tar.gz
???? /usr/local/Cellar/ghc/7.10.1_1: 5423 files, 821M
==> Downloading https://homebrew.bintray.com/bottles/cabal-install-1.22.2.0.yose
######################################################################## 100.0%
==> Pouring cabal-install-1.22.2.0.yosemite.bottle.1.tar.gz
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
==> Summary
???? /usr/local/Cellar/cabal-install/1.22.2.0: 6 files, 19M
C'est une vieille question, mais étant donné qu'elle vient très haut sur la recherche Google. Voilà comment je suis arrivé ici.
$ brew update
$ brew install haskell-stack
$ stack --version
$ stack --help # "man stack" gives something completely different
$ stack setup # Install GHC
$ stack ghci
Source: http://seanhess.github.io/2015/08/04/practical-haskell-getting-started.html
Pourquoi empiler et non cabale?
Éditer:
J'ai trouvé ennuyeux de devoir écrire "stack ghci" chaque fois que je voulais utiliser "ghci". Une solution à cela était d'ajouter simplement ces lignes au fichier ~/.bash_aliases:
alias sghc='stack ghc'
alias sghci='stack ghci'
alias srunhaskell='stack runhaskell'
Ensuite, sourcez le fichier à appliquer:
$ source ~/.bash_aliases
Ensuite, je peux exécuter ghci et/ou haskell en exécutant ces commandes, et il utilisera la version de la pile:
$ sghc [filename]
$ sghci
$ srunhaskell
Mise à jour: février 2016 : Bien que d'autres réponses aient été utiles, je n'ai pas trouvé de réponse complète et à jour.
L'installation est simple:
$ brew install ghc cabal-install
Une étape supplémentaire dont j'avais besoin pour effectuer la post-installation était:
$ cabal update
suivi par:
$ cabal install ghc-mod
Voir ici pour plus de détails.
Alternativement, au lieu d'utiliser homebrew pour l'installation, visitez Haskell Platform pour l'image disque du programme d'installation - notez que Haskell Platform n'est compatible qu'avec OS X 10.6 et versions ultérieures.
Bien que, en règle générale, j'utilise toujours des homebrews pour gérer mes dépendances, quand il s'agit de Haskell, ma recommandation (sauf si vous savez vraiment ce que vous faites) est d'installer simplement ce binaire. Cela évite toute surprise plus loin sur la route. Il existe une excellente documentation après l'installation en local sur: fichier: ///Library/Haskell/doc/start.html
La réponse populaire à cette question (utiliser brew pour installer la plateforme haskell) n'est plus prise en charge.
Malheureusement, GHC 7.4 n'est pas pris en charge sur OS X 10.6; la page de téléchargement n'a qu'un programme d'installation pour 10.7, et comme vous pouvez le voir, ils le pensent. Je connais votre problème par expérience amère - j'ai été dans votre bateau pendant longtemps et je n'ai jamais trouvé de solution autre que la mise à niveau de Mac OS X (ou, probablement, la rétrogradation de GHC, mais je ne voulais pas vraiment le faire ). Une de mes collègues a réussi à faire fonctionner 7.4.1 sur OS X 10. 5 , mais cela a pris un effort non trivial de sa part (elle a dû utiliser une version différente de GMP, à savoir 5.0.5, et modifier le script de configuration de GHC), et je n'ai jamais essayé de le répliquer moi-même.
Au final, vous avez quatre options, dans un ordre de simplicité à peu près décroissant:
Réponse fin 2017. J'utilise macOS Sierra - 10.12.6 (16G29). Cela a fonctionné avec succès avec un temps d'installation sur mon MacBook Air de moins de cinq minutes:
brew cask install haskell-platform
Alors ghc --version
signalé:
Le système de compilation Glorious Glasgow Haskell, version 8.2.1