Як правильно встановити Go Language в Ubuntu?


12

Я намагаюся дотримуватися цих інструкцій, щоб встановити Диск, але я не можу прийти Goдо належної роботи.

Я продовжую отримувати помилку:

go tool: no such tool "6g"

Коли я намагаюся використовувати go get [url]. Я також отримую цю помилку при спробі запустити привіт світовий скрипт (щоб перевірити, чи 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"

ви встановили GOPATH та GOROOT?
Rinzwind

Так, спочатку я отримував помилку щодо GOPATH. Я використав це питання ТА, щоб знайти рішення, яке потім привело мене до наступної помилки, яку я не можу виправити.
Bprodz

Вам потрібна остання версія Go? Набагато простіше встановити Go з архіву - sudo apt-get install golang.
Натан Осман

@NathanOsman Я не думаю, що мені просто потрібно мати можливість скласти програму, написану на Go (минулого вересня). Я побіг, sudo apt-get install golangале він повернув 0 для оновлення, щойно встановлений, 62 не для оновлення, і я все ще не можу використовувати go getі go run. Чи потрібно мені примушувати apt-get, щоб перезаписати мою поточну версію Go?
Bprodz

Відповіді:


12

Проблема твоя GOROOT. Його слід встановити на /usr/lib/go( не /usr/share/go ).

export GOROOT=/usr/lib/go

2

Установка

  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. Тепер ви можете бачити це:

    а. GOPATHзнаходиться в /home/casper/gopath.

    б. GOROOTзнаходиться в /usr/lib/go-1.6.

Список літератури


golangПакет офіційно знаходиться в сховищі, чому я повинен додати PPA, де ці PPA відомі для випусків?
Анвар
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.