web-dev-qa-db-fra.com

Comment installer correctement Go Language dans Ubuntu?

J'essaie de suivre ces instructions pour installer Drive, mais je ne parviens pas à obtenir Go pour qu'il fonctionne correctement.

Je continue à avoir l'erreur:

go tool: no such tool "6g"

Lorsque j'essaie d'utiliser go get [url]. Je reçois également cette erreur lorsque j'essaie d'exécuter un script hello world (pour vérifier que Go s'est correctement installé).

J'ai essayé d'installer les programmes individuels recommandé dans cet article (golang-go.tools gccgo-go) concernant la correction de cette erreur, mais le problème persiste.

Comment puis-je obtenir l'outil 6g?

Voici les résultats de go env:

GOARCH="AMD64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="AMD64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/user/go"
GORACE=""
GOROOT="/usr/share/go"
GOTOOLDIR="/usr/share/go/pkg/tool/linux_AMD64"
TERM="dumb"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CXX="g++"
CGO_ENABLED="1"
12
Bprodz

Le problème est votre GOROOT. Il doit être défini sur /usr/lib/go (not/usr/share/go).

export GOROOT=/usr/lib/go
12
friederbluemle

Installation

  1. Mettre à jour.

    Sudo apt-get update 
    
  2. Installez le langage Go.

    Sudo apt-get install golang
    
  3. Définissez GOPATH dans votre dossier personnel. Après cette action, vous pouvez utiliser la commande echo $GOPATH pour vérifier l'emplacement du chemin d'accès.

    export GOPATH=$HOME/gopath
    
  4. Pour GOPATH, il n’est pas nécessaire de le définir. Mais vous pouvez toujours le définir.

    # Get the go installation root path.
    go env GOROOT
    
    # Set the result of `go env GOROOT` to system variable GOROOT.
    # In this example, the result of `go env GOROOT` is `/usr/lib/go-1.6`
    export GOROOT=/usr/lib/go-1.6
    

Vérification des variables d'environnement Go

  1. Utilisez la commande go env et vous obtiendrez:

    GOARCH="AMD64"
    GOBIN=""
    GOEXE=""
    GOHOSTARCH="AMD64"
    GOHOSTOS="linux"
    GOOS="linux"
    GOPATH="/home/casper/gopath"
    GORACE=""
    GOROOT="/usr/lib/go-1.6"
    GOTOOLDIR="/usr/lib/go-1.6/pkg/tool/linux_AMD64"
    GO15VENDOREXPERIMENT="1"
    CC="gcc"
    GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
    CXX="g++"
    CGO_ENABLED="1"
    
  2. Maintenant, vous pouvez voir que:

    une. GOPATH est dans /home/casper/gopath.

    b. GOROOT est dans /usr/lib/go-1.6.

Références

2
Kin