web-dev-qa-db-ja.com

UbuntuにGo言語を適切にインストールする方法は?

私は これらの指示 に従ってドライブをインストールしようとしていますが、Goが正しく動作しません。

エラーが発生し続けます:

go tool: no such tool "6g"

go get [url]を使用しようとすると。 Hello Worldスクリプトを実行しようとすると、このエラーが発生します(Goが正しくインストールされたことを確認するため)。

私は個々のプログラムをインストールしようとしました この投稿で推奨 (golang-go.tools gccgo-go)このエラーの修正についてですが、問題は解決しません。

6gツールを入手するにはどうすればよいですか?

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

問題はあなたのGOROOTです。 /usr/lib/gonot/usr/share/go)に設定する必要があります。

export GOROOT=/usr/lib/go
12
friederbluemle

Installation

  1. 更新。

    Sudo apt-get update 
    
  2. Go言語をインストールします。

    Sudo apt-get install golang
    
  3. GOPATHをホームフォルダーに設定します。このアクションの後、コマンドecho $GOPATHを使用して、移動パスの場所を確認できます。

    export GOPATH=$HOME/gopath
    
  4. GOPATHの場合、定義する必要はありません。ただし、定義することはできます。

    # 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
    

Go環境変数の確認

  1. コマンドgo envを使用すると、以下が得られます。

    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. 今、あなたはそれを見ることができます:

    a。 GOPATH/home/casper/gopathにあります。

    b。 GOROOT/usr/lib/go-1.6にあります。

参照資料

2
Kin