GHC construction erreur lors d'une tentative de construire la bibliothèque Cabal

StackOverflow https://stackoverflow.com/questions/4413193

  •  08-10-2019
  •  | 
  •  

Question

Je tente de construire / installer Cabal sur mon système et je suis en cours d'exécution dans l'erreur de dépendance suivante:

SDGL0990Z464C:Cabal-1.8.0.4 cflynn$ ghc --make Setup
SDGL0990Z464C:Cabal-1.8.0.4 cflynn$ ./Setup configure
Configuring Cabal-1.8.0.4...
Setup: At least the following dependencies are missing:
base >=4 && <3 && >=1 && <5, filepath >=1 && <1.2

J'ai GHC 7.0.1 installé, pour autant que je sais GHC 6.6.1 et plus tard avec le package « filepath »? Et je ne suis pas clair sur exactement ce que la « base » se réfère à?

Était-ce utile?

La solution

navires GHC avec un certain ensemble de bibliothèques déjà installé. Lorsque vous exécutez la commande build ci-dessus cabale veut « Réinstaller » des anciennes versions des bibliothèques livrées avec GHC. Cela est mauvais pour des raisons évidentes.

Si vous avez vraiment besoin de faire cela, il peut travailler à une utilisation cabal-dev au lieu de Cabal. Soit dit en passant, en utilisant Setup.hs invoque la version de la bibliothèque Cabal livré avec votre compilateur, où en exécutant la commande cabal invoque le programme cabal-install.

cabal-dev est un enrobage de cabal-install (et donc Cabal la bibliothèque) qui fournit sandboxed construit. Assurer la sécurité pour installer des programmes qui ont besoin de différentes versions des bibliothèques livrées avec GHC. La question qui reste est de savoir si oui ou non ces anciennes bibliothèques construiraient contre la nouvelle GHC. Dans de nombreux cas, la construction échouera.

Je vous recommande vivement d'utiliser cabal-dev pour votre forfait au jour le jour au lieu de construction cabal-install. Les avantages de sandboxing sont nombreux et fortement l'emportent sur le risque de votre base de données cabal-install corrompant paquet par la mise à niveau d'un paquet quelque part au milieu d'une chaîne de dépendance pour quelque chose que vous avez déjà installé.

Pour plus d'informations sur l'utilisation cabal-dev, je recommande cette reddit poste .

base est un ensemble de modules Haskell qui fournissent une grande partie de la fonctionnalité qui est livré avec tous les GHC installent. Il est une collection de bibliothèques utiles que la plupart des utilisateurs Haskell veulent et ont besoin.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top