coldwa.st
Tous les guidesProgrammationWebDonnéesHaskellConceptsCabal & buildsChaîne d’outilsCompilateurPerformanceÉditeur & HLS

Haskell · chaîne d’outils · installation

Installer Haskell avec GHCup : le guide de la chaîne d’outils 2026

Par ColdwastMis à jour le 14 juin 20267 min de lecture#haskell#ghcup#cabal
Du code source coloré syntaxiquement sur un écran sombre
Du code source coloré syntaxiquement à l’écran.

Si vous débutez avec Haskell en 2026, la question « comment l’installer ? » a une réponse claire : GHCup. C’est l’installeur officiel et multiplateforme et le gestionnaire de versions de toute la chaîne d’outils — le compilateur (GHC), l’outil de build (cabal-install), Stack, et le backend éditeur (HLS, le Haskell Language Server). Ce guide parcourt une installation propre, le changement de versions et les pièges que les gens rencontrent le plus souvent.

Ce que GHCup gère réellement

GHCup est un outil unique qui installe et bascule entre plusieurs versions de chaque composant, pour que vous ne soyez jamais bloqué sur un seul compilateur :

  • GHC — le Glasgow Haskell Compiler.
  • cabal-install — l’outil de build cabal et son solveur de dépendances.
  • Stack — un outil de build alternatif avec des snapshots curés.
  • HLS — le Haskell Language Server, qui alimente l’autocomplétion, les infos de types et les refactors dans VS Code, Neovim et d’autres éditeurs.

Il a remplacé l’ancien bundle « Haskell Platform » précisément parce que les vrais projets ont besoin de versions différentes de GHC, et GHCup rend le changement trivial.

Installer GHCup

Sous Linux et macOS, la ligne de commande officielle récupère un installeur interactif :

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

Comme pour tout script d’installation, lisez d’abord ce qu’il fait — la source est sur GitHub (haskell/ghcup-hs). Sous Windows, exécutez l’installeur PowerShell documenté sur le site de GHCup ; il met en place la même chaîne d’outils plus l’environnement MSYS2 requis.

L’installeur propose d’ajouter GHCup à votre profil shell pour que ghc, cabal et consorts soient dans votre PATH. Acceptez, puis redémarrez votre shell.

La voie interactive : ghcup tui

Un ordinateur portable sur un bureau affichant du code source dans un éditeur
Un ordinateur portable affichant du code source dans un éditeur.

La façon la plus rapide de gérer les versions est l’interface en terminal :

ghcup tui

Elle liste chaque version disponible de GHC, Cabal, Stack et HLS avec leur statut (installée, active, recommandée). Vous sélectionnez ce qu’il faut installer ou activer au clavier — pas besoin de mémoriser des commandes.

Les équivalents en ligne de commande

Si vous préférez les scripts ou la CI, les mêmes actions sont de simples commandes :

# install the recommended versions
ghcup install ghc recommended
ghcup install cabal recommended
ghcup install hls recommended

# make a specific GHC the active one
ghcup set ghc 9.10.1

# see what is installed
ghcup list

Utilisez les numéros de version que GHCup marque comme recommended sauf si un projet épingle quelque chose de spécifique dans son cabal.project ou stack.yaml.

Premier build, pour confirmer que ça marche

cabal update          # refresh the package index
mkdir hello && cd hello
cabal init --simple --non-interactive
cabal run

Si cela affiche une sortie, votre chaîne d’outils est saine. À partir de là, le build lui-même est parallèle par défaut — voyez notre guide sur comment Cabal exploite vos cœurs, et les changements plus profonds arrivés dans Cabal 2.0 et le modèle new-build.

Pièges courants

  • PATH non mis à jour. Si ghc renvoie « command not found » après l’installation, vous avez sauté l’étape du profil — relancez l’installeur ou sourcez ~/.ghcup/env.
  • Incompatibilité de version HLS. Le Haskell Language Server doit prendre en charge votre GHC actif. Si le HLS de votre éditeur ne se charge pas, installez la build HLS correspondant à votre GHC via ghcup tui.
  • GHC système masquant GHCup. Un GHC installé via le gestionnaire de paquets de votre OS peut prendre le dessus dans le PATH. Privilégiez celui géré par GHCup et supprimez ou déprioritisez le paquet système.
  • Index de paquets périmé. Les erreurs de résolution après une longue interruption n’ont généralement besoin que de cabal update.

Pour le vocabulaire employé dans ces guides — plans d’installation, snapshots, sandboxes — l’ancien guide des sandboxes Cabal couvre comment l’isolation a évolué vers les builds par projet d’aujourd’hui.

Stack ou Cabal après GHCup ?

GHCup installe les deux, donc le choix vous revient. Cabal, avec son modèle de build moderne par projet, est le défaut par lequel la plupart des débutants devraient commencer ; Stack ajoute des snapshots de paquets curés que certaines équipes préfèrent pour la reproductibilité. Les deux fonctionnent avec le GHC que GHCup gère, et vous pouvez basculer plus tard sans réinstaller le compilateur.

FAQ

GHCup est-il la manière officielle d’installer Haskell ? Oui — c’est l’installeur recommandé sur haskell.org et le point d’entrée standard de la chaîne d’outils en 2026.

GHCup fonctionne-t-il sous Windows ? Oui, via son installeur PowerShell, qui met aussi en place l’environnement MSYS2 dont GHC a besoin sous Windows.

Puis-je avoir plusieurs versions de GHC à la fois ? Oui — c’est tout l’intérêt. Installez-en plusieurs, changez la version active avec ghcup set ghc <version>.

Ai-je encore besoin de la Haskell Platform ? Non. GHCup l’a remplacée ; installez individuellement les composants dont vous avez besoin.

Guide indépendant, maintenu par la communauté. coldwa.st est un site de ressources de programmation ; cet article est un écrit neuf et original sur GHCup et la chaîne d’outils Haskell actuelle, sans affiliation avec les mainteneurs d’aucun outil ni rédigé par eux. Les commandes reflètent le comportement documenté de GHCup — vérifiez toujours la documentation officielle pour les derniers numéros de version.