Menu

Installer Golang sur Windows, macOS et Linux, étape par étape

Comment télécharger et installer Go sur Windows, macOS et Linux, vérifier l'installation avec go version, comprendre GOPATH, et corriger l'erreur « go: command not found ».

Cette page contient des éditeurs exécutables - modifiez, exécutez et voyez la sortie instantanément.

Téléchargez Go sur go.dev/dl, lancez l'installeur de votre système, ouvrez un nouveau terminal et lancez go version. C'est toute l'installation sous Windows et macOS. Sous Linux, vous extrayez une archive et ajoutez un répertoire à votre PATH. Les sections ci-dessous couvrent chaque système, puis les vérifications et les erreurs que les gens rencontrent réellement.

Vous n'avez pas besoin d'installer Go pour l'essayer. Ce programme s'exécute dans votre navigateur, avec la même version de Go que le site, et indique sur quoi il tourne :

Une fois Go installé en local, le même programme affiche les détails de votre propre machine.

Quel téléchargement choisir

La page de téléchargement propose un fichier par système d'exploitation et par architecture de processeur :

SystèmeFichierRemarques
Windows, la plupart des PCgo1.24.5.windows-amd64.msiamd64 signifie Intel ou AMD 64 bits
Windows sur ARMgo1.24.5.windows-arm64.msiSurface Pro X, portables Snapdragon
macOS, Apple Silicon (M1 et suivants)go1.24.5.darwin-arm64.pkgdarwin désigne macOS
macOS, Intelgo1.24.5.darwin-amd64.pkg
Linux, la plupart des serveurs et PCgo1.24.5.linux-amd64.tar.gz
Linux sur ARMgo1.24.5.linux-arm64.tar.gzRaspberry Pi 4 et 5 avec un OS 64 bits, AWS Graviton

Le numéro de version dans ces exemples est 1.24.5. Prenez la version stable la plus récente, quelle qu'elle soit ; les étapes ne changent pas d'une version à l'autre.

Installer Go sur Windows

  1. Téléchargez le fichier .msi et lancez-le.
  2. Acceptez les valeurs par défaut. Go s'installe dans C:\Program Files\Go et l'installeur ajoute C:\Program Files\Go\bin à votre PATH.
  3. Fermez toutes les fenêtres d'invite de commandes ou de PowerShell ouvertes et ouvrez-en une nouvelle. Les terminaux ouverts pendant l'installation ont encore l'ancien PATH.
  4. Vérifiez l'installation :
go version
go version go1.24.5 windows/amd64

winget fonctionne aussi, si vous préférez un gestionnaire de paquets :

winget install GoLang.Go

Installer Go sur macOS

Avec le paquet officiel

Téléchargez le .pkg correspondant à votre puce et ouvrez-le. Il installe Go dans /usr/local/go et ajoute /usr/local/go/bin à votre PATH via le fichier /etc/paths.d/go. Ouvrez une nouvelle fenêtre de Terminal, puis :

go version
go version go1.24.5 darwin/arm64

Avec Homebrew

brew install go
go version

Homebrew place Go sous son propre préfixe (/opt/homebrew sur Apple Silicon) et lie go dans un répertoire qui est déjà dans votre PATH. Mettez à jour plus tard avec brew upgrade go.

Choisissez une seule méthode. Avoir à la fois l'installation .pkg et celle de Homebrew signifie deux binaires go dans votre PATH, et c'est le premier qui l'emporte. which go vous indique lequel votre shell utilise.

Installer Go sur Linux et Ubuntu

La méthode officielle fonctionne sur toutes les distributions. Supprimez d'abord toute installation précédente, car extraire par-dessus une ancienne arborescence mélange des fichiers de deux versions et casse la chaîne d'outils :

cd ~/Downloads
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.5.linux-amd64.tar.gz

Ajoutez ensuite Go à votre PATH. Ajoutez cette ligne à la fin de ~/.profile (bash) ou de ~/.zshrc (zsh) :

export PATH=$PATH:/usr/local/go/bin

Chargez-la dans le shell courant et vérifiez :

source ~/.profile
go version
go version go1.24.5 linux/amd64

Paquets Ubuntu : apt et snap

Ubuntu propose deux raccourcis, avec des compromis différents :

# Distribution package: easy, but usually several releases old
sudo apt install golang-go

# Snap: tracks current Go releases
sudo snap install go --classic

La version d'apt compte plus qu'il n'y paraît. Les modules déclarent une version minimale de Go dans go.mod. À partir de Go 1.21, un module qui indique go 1.23 ne compilera pas avec une chaîne d'outils plus ancienne, sauf si Go peut en télécharger une plus récente pour vous, et les chaînes d'outils antérieures à 1.21 tentent quand même la compilation et échouent sur la première fonctionnalité récente qu'elles rencontrent (voir « Garder Go à jour » plus bas). Si vous installez depuis apt, lancez go version et comparez avec go.dev/dl.

Vérifier l'installation

Trois commandes confirment que l'installation fonctionne :

go version
go env GOROOT GOPATH
which go
go version go1.24.5 linux/amd64
/usr/local/go
/home/ana/go
/usr/local/go/bin/go
  • GOROOT est l'endroit où Go lui-même est installé. N'y mettez jamais votre propre code, et vous ne devriez pas avoir à le définir.
  • GOPATH vaut par défaut $HOME/go (%USERPROFILE%\go sous Windows). Go stocke les modules téléchargés dans $GOPATH/pkg/mod et place les programmes compilés par go install dans $GOPATH/bin.
  • which go (where go sous Windows) montre le binaire exact que votre shell exécute. Utilisez-le chaque fois que go version indique une version inattendue.

Lancer votre premier programme

Votre code peut vivre dans n'importe quel répertoire. Créez un dossier, initialisez un module et écrivez un fichier :

mkdir hello
cd hello
go mod init example.com/hello
go: creating new go.mod: module example.com/hello

Enregistrez ceci sous main.go dans ce dossier :

Puis lancez-le :

go run .
Go is installed and working.

go run . compile le package du répertoire courant et l'exécute. La page hello world explique chaque ligne du programme, et l'étape go mod init est traitée dans les modules Go.

Ajouter GOPATH/bin au PATH

Les outils installés avec go install vont dans $HOME/go/bin, qui n'est pas dans votre PATH par défaut. Si vous installez un outil et que le shell dit qu'il ne le trouve pas, ajoutez aussi ce répertoire :

go install golang.org/x/tools/cmd/goimports@latest
export PATH=$PATH:$(go env GOPATH)/bin
goimports -h

Mettez la ligne export dans ~/.profile ou ~/.zshrc pour qu'elle survive aux nouveaux terminaux. Sous Windows, l'installeur ajoute déjà %USERPROFILE%\go\bin au PATH de votre utilisateur.

Garder Go à jour

Pour mettre à jour, installez la nouvelle version de la même façon que l'ancienne. Sous Linux, cela veut dire répéter les étapes rm -rf /usr/local/go et tar ; ne sautez pas la suppression.

Depuis Go 1.21, la commande go peut aussi récupérer une chaîne d'outils plus récente à la demande. Si le go.mod d'un module indique go 1.24 et que vous avez Go 1.22, lancer go build télécharge Go 1.24 dans le cache des modules et l'utilise, tant que GOTOOLCHAIN garde sa valeur par défaut auto. Votre Go installé reste le même ; seul ce module est compilé avec la version plus récente.

Pour garder une version plus ancienne à des fins de test, installez-la en parallèle :

go install golang.org/dl/go1.23.4@latest
go1.23.4 download
go1.23.4 version

Erreurs d'installation courantes

go: command not found ou zsh: command not found: go. Le shell ne trouve pas le binaire. Sous Linux, vérifiez que /usr/local/go/bin figure dans la ligne export PATH du fichier que votre shell lit réellement (~/.zshrc pour zsh, ~/.profile ou ~/.bashrc pour bash), puis ouvrez un nouveau terminal. Lancez echo $PATH pour voir ce que le shell connaît.

'go' is not recognized as an internal or external command (Windows). Fermez et rouvrez le terminal. Si cela persiste, ouvrez « Modifier les variables d'environnement système », cliquez sur Variables d'environnement, et assurez-vous que C:\Program Files\Go\bin figure dans Path. Le terminal intégré de VS Code hérite de l'environnement avec lequel VS Code a démarré, donc redémarrez aussi VS Code.

go version affiche l'ancienne version après une mise à jour. Deux installations sont dans votre PATH. Lancez which -a go (ou where go sous Windows) et supprimez celle dont vous ne voulez pas, souvent un paquet apt dans /usr/bin/go qui masque /usr/local/go/bin/go.

go: go.mod file not found in current directory or any parent directory. Go est correctement installé ; vous avez lancé go build ou go run . en dehors d'un module. Lancez d'abord go mod init example.com/yourname dans le dossier du projet.

D'étranges erreurs de compilation dans la bibliothèque standard après une mise à jour sous Linux. La nouvelle archive a été extraite par-dessus l'ancienne arborescence. Supprimez complètement /usr/local/go et extrayez à nouveau.

Permission refusée lors de l'extraction. /usr/local appartient à root, donc les commandes rm et tar ont besoin de sudo. Votre propre code n'a jamais besoin de sudo.

Configuration de l'éditeur

N'importe quel éditeur convient, mais installez la prise en charge de Go pour avoir l'autocomplétion, la mise en évidence des erreurs et le formatage à l'enregistrement. Dans VS Code, installez l'extension Go officielle (publiée par l'équipe Go de Google) ; elle propose d'installer gopls, le serveur de langage Go, la première fois que vous ouvrez un fichier .go. GoLand de JetBrains est la principale option commerciale. Vim et Neovim utilisent gopls via leurs clients LSP.

Questions fréquentes

Comment installer Golang ?

Téléchargez l'installeur de votre système sur go.dev/dl. Sous Windows, lancez le .msi, sous macOS le .pkg (ou brew install go), et sous Linux extrayez l'archive dans /usr/local et ajoutez /usr/local/go/bin à votre PATH. Ouvrez un nouveau terminal et lancez go version pour confirmer.

Comment corriger « go: command not found » ?

Le shell ne trouve pas le binaire go dans votre PATH. Sous Linux, ajoutez export PATH=$PATH:/usr/local/go/bin à ~/.profile (ou à ~/.zshrc pour zsh), puis ouvrez un nouveau terminal. Avec les installeurs Windows et macOS, la correction consiste généralement à fermer et rouvrir le terminal, parce qu'un terminal garde le PATH avec lequel il a démarré.

Comment installer Go sur Ubuntu ?

Utilisez l'archive officielle : sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.24.5.linux-amd64.tar.gz, puis ajoutez /usr/local/go/bin au PATH. sudo apt install golang-go fonctionne aussi, mais le paquet d'Ubuntu a souvent plusieurs versions de retard. sudo snap install go --classic suit les versions actuelles.

Faut-il définir GOPATH ?

Non. Depuis Go 1.16, le mode module est le mode par défaut, donc votre code peut vivre dans n'importe quel répertoire. GOPATH vaut par défaut $HOME/go et ne sert qu'au cache de téléchargement des modules et aux binaires compilés par go install, qui atterrissent dans $HOME/go/bin.

Comment vérifier la version de Go installée ?

Lancez go version. La commande affiche quelque chose comme go version go1.24.5 linux/amd64 : la version, puis le système d'exploitation et l'architecture du processeur. go env montre la configuration complète, y compris GOROOT (où Go est installé) et GOPATH.

Coddy programming languages illustration

Apprendre à coder avec Coddy

COMMENCER