Comment installer Go 1.7 sur CentOS 7

introduction

Go, souvent appelégolang, est un langage de programmation open source développé par Google. Il adopte une approche de développement minimaliste et facilite la création de logiciels simples, fiables et efficaces. Ce tutoriel vous guidera lors du téléchargement et de l'installation de Go 1.7, ainsi que pour la compilation et l'exécution d'un programme de base «Hello, World!» Sur un serveur CentOS 7.

Conditions préalables

Avant de suivre ce didacticiel, assurez-vous que vous disposez d'un utilisateur normal non root avec les privilègessudo. Vous pouvez en savoir plus sur la configuration d'un utilisateur avec ces privilèges dans notre guide,How To Create a Sudo User on CentOS.

[[step-1 -–- download-go]] == Étape 1 - Téléchargement de Go

Depuis septembre 2016, le packagegolang dans les référentiels par défaut pour CentOS n'est pas à jour. En conséquence, nous téléchargerons manuellement le package directement depuis lesGo website. Assurez-vous de copier le lien de la dernière version compatible avec une architecture 64 bits.

Commencez par vous déplacer dans un répertoire accessible en écriture:

cd /tmp

Utilisez la commandecurl et le lien de Go pour télécharger l'archive tar:

curl -LO https://storage.googleapis.com/golang/go1.7.linux-amd64.tar.gz

Bien que l'archive vienne d'une source authentique, il est préférable de vérifier à la fois l'authenticité et l'intégrité des éléments téléchargés à partir d'Internet. Cette méthode de vérification certifie que le fichier n'a pas été altéré, ni corrompu, ni endommagé pendant le processus de téléchargement. La commandeshasum avec l'indicateur-a 256 produit un hachage unique de 256 bits:

shasum -a 256 go1.7*.tar.gz
Output702ad90f705365227e902b42d91dd1a40e48ca7f67a2f4b2fd052aaa4295cd95  go1.7.linux-amd64.tar.gz

Comparez le hachage de votre sortie à la valeur de la somme de contrôle sur les Godownload page. S'ils concordent, il est alors raisonnable de conclure que le téléchargement est légitime.

Une fois Go téléchargé et l'intégrité du fichier validée, procédons à l'installation.

[[step-2 -–- Installing-go]] == Étape 2 - Installation de Go

L'installation de Go consiste à extraire l'archive tar dans le répertoire/usr/local. L'utilisation de la commandetar avec l'indicateur-C enregistre le contenu dans un répertoire spécifié. L'indicateur-x exécute la fonction d'extraction,-v produit une sortie verbeuse,-z filtre l'archive via l'utilitaire de compressiongzip, et-f lui indique le spécifié nom de fichier sur lequel effectuer les actions:

sudo tar -C /usr/local -xvzf go1.7.linux-amd64.tar.gz

[.note] #Note: L'éditeur recommande officiellement de placer Go dans le répertoire/usr/local. L'installer dans un autre emplacement n'a pas d'incidence sur sa convivialité, mais le chemin personnalisé doit être défini dans la variable d'environnement Go,GOROOT. L'étape suivante traite de l'utilisation des variables d'environnement.
#

Ensuite, sous le répertoire personnel de votre utilisateur, créez votre espace de travail Go avec trois répertoires enfants,bin,src etpkg. Le répertoirebin contiendra des programmes exécutables compilés à partir des fichiers source lisibles par l'homme dans le répertoiresrc. Même si nous n'utiliserons pas le répertoirepkg dans ce didacticiel, nous recommandons tout de même de le configurer car il est utile lors de la création de programmes plus sophistiqués. Le répertoirepkg stocke les objets du package, qui est du code réutilisable partagé entre les programmes.

Nous appellerons notre répertoire d'espace de travailprojects, mais vous pouvez le nommer comme vous le souhaitez. L'indicateur-p pour la commandemkdir créera l'arborescence de répertoires appropriée.

mkdir -p ~/projects/{bin,pkg,src}

À ce stade, pour utiliser Go, vous devez spécifier le chemin d'accès complet à son emplacement d'installation dans la ligne de commande. Pour rendre l'interaction avec Go plus conviviale, nous allons définir quelques chemins.

[[step-3 -–- setting-path-for-go]] == Étape 3 - Définition des chemins pour Go

Pour exécuter Go comme toute autre commande, nous devons ajouter son emplacement d'installation à la variable$PATH. Go a été installé dans un répertoire système, c'est pourquoi nous allons définir la variable d'environnement de manière globale.

Créez un scriptpath.sh dans le répertoire/etc/profile.d à l'aide de l'éditeurvi:

sudo vi /etc/profile.d/path.sh

Ajoutez les éléments suivants au fichier, enregistrez et quittez:

/etc/profile.d/path.sh

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

[.warning] #Warning: Si Go a été installé dans un emplacement différent, ajustez le chemin en conséquence.
#

En outre, définissez les variables d'environnement GoGOPATH etGOBIN dans le fichier.bash_profile de votre utilisateur pour qu'elles pointent vers l'espace de travail récemment créé. La variableGOPATH indique à Go l'emplacement de vos fichiers source, tandis que la variableGOBIN lui indique où créer les fichiers binaires compilés.

Ouvrez le fichier.bash_profile:

vi ~/.bash_profile

Ajoutez les éléments suivants à la fin du fichier, enregistrez et quittez:

~/.bash_profile

. . .
export GOBIN="$HOME/projects/bin"
export GOPATH="$HOME/projects/src"

[.Attention]##

Warning: Comme indiqué à l'étape 2, si Go n'a pas été installé dans le répertoire/usr/local, définissez également la variableGOROOT.

~/.bash_profile

. . .
export GOROOT="/path/to/go"


Pour appliquer les modifications à votre session BASH actuelle, utilisez la commandesource pour recharger les profils mis à jour:

source /etc/profile && source ~/.bash_profile

Avec le cœur de Go en place, confirmons que notre configuration fonctionne en composant un programme court.

[[step-4 -–- creating-a-program]] == Étape 4 - Création d'un programme

La rédaction de notre premier programme assurera le bon fonctionnement de notre environnement et nous permettra de nous familiariser avec le langage de programmation Go.

Pour commencer, créez un nouveau fichier.go:

vi ~/projects/src/hello.go

Le code ci-dessous utilise le package Go principal, importe le composant de contenu E / S formaté et définit une nouvelle fonction pour imprimer la chaîneHello, World!. Ajoutez ce qui suit au fichier:

~/projects/hello.go

package main

import "fmt"

func main() {
    fmt.Printf("Hello, World!\n")
}

Ensuite, enregistrez et quittez le fichier.

Ensuite, compilez le fichier sourcehello.go avec la commandego install:

go install $GOPATH/hello.go

Nous sommes maintenant prêts à exécuter notre programme:

$GOBIN/hello

Le programmehello.go devrait produire un messageHello, World!, confirmant une installation réussie de Go.

Conclusion

Le programme simple «Hello, World!» A établi que vous disposiez d’un environnement de développement Go. Une application typique utilisera des bibliothèques et des packages distants. Pour en savoir plus sur l'utilisation de ces composants supplémentaires, consultez la documentation officielle surHow to Write Go Code.