So installieren Sie die aktuelle Version von Go in Ubuntu Precise

141

Laufen sudo apt-get install golang-stable, ich bekomme Go-Version go1.0.3. Gibt es eine Möglichkeit zur Installation go1.1.1?

Sofia
quelle
1
Am Ende musste ich von der Quelle installieren. Nicht alle Tests bestanden, aber es scheint in Ordnung zu funktionieren.
Sofia
1
"Nicht alle Tests bestanden, aber es scheint in Ordnung zu sein." @sofia welche Version von Ubuntu benutzt du? Ich würde keine Testfehler erwarten, wenn Sie nicht eine sehr alte Version von Ubuntu verwenden oder versehentlich "tip" vs. "stabile" installiert haben.
Voidlogic
Ich benutze Ubuntu präzise. Die Installation der neuesten Version aus dem Repo duh / golang hat jedoch kein Problem gemeldet. Sie sind sich also nicht sicher, wo das Problem liegt.
Sofia
Ich benutze auch präzise. Haben Sie "hg update tip" oder "hg update release" ausgeführt? Wenn Sie sich nicht erinnern, schauen Sie in Ihre Bash-Verlaufsdatei zurück. Die Verwendung von tip kann die Testfehler erklären.
Voidlogic
1
Sie können diesen Blog railskey.wordpress.com/2014/05/31/install-gogolang-on-ubuntu
Pravin Mishra

Antworten:

110

Ich habe ein Repo mit den neuesten Versionen gefunden: https://launchpad.net/~duh/+archive/golang/+packages . Also im Grunde:

sudo apt-get install python-software-properties  # 12.04
sudo add-apt-repository ppa:duh/golang
sudo apt-get update
sudo apt-get install golang

Bestätigen:

go version

welche Ausgaben in meinem Fall (Ubuntu präzise)

go version go1.1.1 linux/amd64

Von dort exportieren Sie einfach die Einstellungen, die Sie benötigen, nach bash_rc oder gleichwertig:

export GOROOT=/usr/lib/go
export GOBIN=/usr/bin/go
Sofia
quelle
39
Ab Juli 2014 gibt es also nicht mehr die neueste Version von Go. Aktuelle Version ist 1.3. Nachdem ich dies unter Ubuntu 12.04 versucht hatte, kam ich zu Version 1.1.1.
425nesp
4
Bitte aktualisieren Sie dies. Ab September 2014 habe ich auch "go1.1.2"
Riccardo
2
Ab dem 24.10.2014 habe ich 1.2.1 linux / amd64 erhalten.
Nairware
5
Einchecken am 29. März 2015. Dieser ppa antwortet mit einem 404.
btleffler
7
Ich benutzteppa:evarlast/golang1.4
Natim
98

Ich benutze gerne GVM Verwalten meiner Go-Versionen in meiner Ubuntu-Box. Ziemlich einfach zu bedienen, und wenn Sie mit RVM vertraut sind, ist es ein Nobrainer. Sie können mehrere Versionen von Go in Ihrem System installieren und jederzeit zwischen den gewünschten Versionen wechseln.

Installieren Sie GVM mit:

sudo apt-get install bison mercurial
bash < <(curl -LSs 'https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer')
. "$HOME/.gvm/scripts/gvm"

und dann ist es so einfach:

gvm install go1.1.1
gvm use go1.1.1 --default

Das Standardflag am Ende des zweiten Befehls setzt go1.1.1 als Ihre Standardversion von Go, wenn Sie eine neue Terminalsitzung starten.

noj
quelle
1
Ich mag RVM und genieße immer ein gutes Werkzeug in meinem Kit. Ich bin froh zu sehen, dass es ein Tool wie GVM gibt :)
Brenden
2
gvm ist der gleiche Name wie für grails gvm
jcalloway
2
Ich habe gerade versucht, GVM unter der Fischschale zu verwenden, und eine Warnung an diejenigen, die Bash nicht verwenden: GVM wird ein Schmerz sein, um richtig in Betrieb zu gehen. Viele seiner Skripte haben zum Beispiel keine Shebang-Zeile.
Dennis
Die Webseite "GVM", auf die verwiesen https://github.com/moovweb/gvmtwird, wurde nicht gefunden. Und ich zögere es, irgendetwas zu installieren, das anscheinend kein eigenes Sicherheitsupdate-Verfahren hat
nealmcb
Ich bin nicht der Meinung, dass es so einfach ist wie "gvm install" und "gvm use".
Kemicofa Ghost
35

Ich habe die folgenden Befehle aus dem offiziellen GoLang-Repository verwendet und GoLang Version 1.6 auf meinem Ubuntu 14.04 installiert

sudo add-apt-repository ppa:ubuntu-lxc/lxd-stable
sudo apt-get update
sudo apt-get install golang

Referenzoffizieller GoLang Repo https://github.com/golang/go/wiki/Ubuntu Es scheint, dass dieser ppa in Zukunft immer aktualisiert wird.

Pankaj Khairnar
quelle
2
The team named '~ubuntu-lxc' has no PPA named 'ubuntu/lxd-stable'
Kenorb
Vom referenzierten Link:sudo add-apt-repository ppa:longsleep/golang-backports sudo apt-get update sudo apt-get install golang-go
Lee Richardson
23

[Oktober 2015] Antwort, da die aktuell akzeptierte Antwort sudo apt-get install golangnicht aktuell ist und wenn Sie nicht installieren möchten, GVMbefolgen Sie diese Schritte.

Schritt für Schritt Installation:

  1. Laden Sie die neueste Version hier (OS: Linux).
  2. Öffnen Sie Ihr Terminal und wechseln Sie in Ihr Download-Verzeichnis
  3. sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
  4. Fügen Sie goIhrem Pfad hinzuexport PATH=$PATH:/usr/local/go/bin
  5. go version um die aktuell installierte Version zu überprüfen
  6. Starten Sie die Programmierung.

Mögliche Fehler + Korrekturen: (zu aktualisieren)

Wenn Sie eine erhalten, haben go version xgcc (Ubuntu 4.9.1-0ubuntu1) 4.9.1 linux/amd64Sie etwas falsch gemacht. Schauen Sie sich diesen Beitrag an: Go druckt die xgcc-Version, aber nicht die installierte Version

kemicofa Geist
quelle
Dies hat nicht armv7
Varun
17

Ich habe von der Quelle installiert. Hier finden Sie eine schrittweise Anleitung: http://golang.org/doc/install/source

mnagel
quelle
2
Ja. Die Installation von Go von der Quelle ist der beste Weg zu "Go". Es ist auch sehr einfach, auf diese Weise zu aktualisieren.
Voidlogic
1
Ich folgte den Anweisungen von hier und es funktionierte für mich wirklich schön golang.org/doc/install#tarball
Bogdan
1
Ich danke dir sehr. Ich arbeite immer noch an meinem Ubuntu 14.04, während die PPAs dies nicht tun. :-)
Ionică Bizău
1
Dies ist jetzt ärgerlich, da Sie 1.5+ mit einem 1.4+ Build booten müssen.
Jocull
7

Hier ist die einfachste und einfachste Methode, die ich für die Installation unter Ubuntu 14.04 ohne ppa oder ein anderes Tool gefunden habe.

Ab sofort ist die Version von GO 1.7

Holen Sie sich das Go 1.7.tar.gz mit wget

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

Extrahieren Sie es und kopieren Sie es nach /usr/local/

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

Sie haben GO nun erfolgreich installiert. Jetzt müssen Sie Umgebungsvariablen festlegen, damit Sie den goBefehl von überall aus verwenden können.

Um dies zu erreichen, müssen wir .bashrc So, eine Zeile hinzufügen .

sudo nano ~/.bashrc

und fügen Sie die folgende Zeile am Ende der Datei hinzu.

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

Nun sind alle Befehle in go/bin funktionieren .

Überprüfen Sie, ob die Installation erfolgreich war

go version

Für die Offline-Dokumentation können Sie tun

godoc -http=:6060

Die Offline-Dokumentation finden Sie unter http://localhost:6060

HINWEIS:

Einige Leute hier schlagen vor, die PATH-Variable zu ändern.

Es ist keine gute Wahl.

  1. Das Ändern in /usr/local/go/binist vorübergehend und wird zurückgesetzt, sobald Sie das Terminal schließen.

  2. go Der Befehl funktioniert nur in Terminals, in denen Sie den Wert von PATH geändert haben.

  3. Sie können keinen anderen Befehl wie ls, nanooder fast alles verwenden, da sich alles andere an /usr/binoder an anderen Orten befindet. All diese Dinge werden nicht mehr funktionieren und es wird Ihnen ein Fehler angezeigt.

Dies ist jedoch dauerhaft und stört nichts anderes.

Ishan Jain
quelle
Sie müssen env var GOPATH = / some / dir definieren und dann PATH = $ {GOPATH} / bin: $ {PATH} für Ihren eigenen Projektcode definieren
Scott Stensland
Ja, ich verwende VSCode, um GOPATH hinzuzufügen. Ich muss nur gopath in den Benutzereinstellungen json bearbeiten. Danke für die Eingabe.
Ishan Jain
Es gibt einen kleinen Tippfehler im Befehl tar: am64 statt amd64
Adrian Lungu
1
@AdrianLungu Behoben.
Ishan Jain
1
sudo nano ~. / bashrc -> sudo nano ~ / .bashrc .. sollte auch vim sein: p
GameKyuubi
4
  1. Laden Sie say go1.6beta1.linux-amd64.tar.gzvon https://golang.org/dl/ in herunter/tmp

wget https://storage.googleapis.com/golang/go1.6beta1.linux-amd64.tar.gz -o /tmp/go1.6beta1.linux-amd64.tar.gz

  1. Un-Teer in /usr/local/bin

sudo tar -zxvf go1.6beta1.linux-amd64.tar.gz -C /usr/local/bin/

  1. Setze GOROOT, GOPATH, [auf Ubuntu füge folgendes zu ~ / .bashrc hinzu]

mkdir ~/go export GOPATH=~/go export PATH=$PATH:$GOPATH/bin export GOROOT=/usr/local/bin/go export PATH=$PATH:$GOROOT/bin

  1. Überprüfen

go version sollte zeigen werden

go version go1.6beta1 linux/amd64

go env sollte zeigen werden

GOARCH="amd64" GOBIN="" GOEXE="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOOS="linux" GOPATH="/home/vats/go" GORACE="" GOROOT="/usr/local/bin/go" GOTOOLDIR="/usr/local/bin/go/pkg/tool/linux_amd64" GO15VENDOREXPERIMENT="1" CC="gcc" GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0" CXX="g++" CGO_ENABLED="1"

suryakrupa
quelle
Hallo, danke für die Antwort, ich folge allen Schritten, aber wenn ich "go version" anstelle von 1.7 rufe, bringt es 1.4.2. Gibt es noch andere Maßnahmen, die durchgeführt werden sollten?
Anahit Serobyan
4

Wenn jemand Go 1.8 installieren möchte, gehen Sie wie folgt vor:

sudo add-apt-repository ppa:longsleep/golang-backports
sudo apt-get update
sudo apt-get install golang-go

Und dann installieren gehen

sudo apt-get install golang-1.8-go
rakibtg
quelle
Funktioniert einwandfrei für mich. Vielen Dank!
Gwyneth Llewelyn
1
Keine Installation erforderlich golang-1.8-go, es ist bereits bei der Installation installiert golang-go. Tatsächlich ist ab Ende April 2017 go 1.8.1 installiert, die neueste Version. github.com/golang/go/wiki/Ubuntu
firepol
Ich denke, Sie müssen auch GOROOT, GOPATH
Nam G VU
Referenz für GOROOT- und GOPATH-Einstellung rechts in anderen Antworten 1) stackoverflow.com/a/34384978/248616 2) stackoverflow.com/questions/17480044/… Weitere offizielle Referenz stackoverflow.com/a/10847122/248616
Nam G VU
Setzen Sie für jedes unserer Go-Projekte GOPATH = / some / dir, PATH = $ {GOPATH} / bin: $ {PATH}
Nam G VU
4

Für die aktuelle Version von Go:

Die Go-Programmiersprache

Loslegen

Laden Sie die Go-Distribution herunter

Downloads

Klicken Sie auf den Link oben, um die Downloadseite des Go-Projekts aufzurufen und die Binärdistribution auszuwählen, die Ihrem Betriebssystem und Ihrer Prozessorarchitektur entspricht.

Offizielle Binärdistributionen sind für die Betriebssysteme FreeBSD, Linux, macOS und Windows sowie für die 32-Bit- (386) und 64-Bit- (amd64) x86-Prozessorarchitekturen verfügbar.

Wenn für Ihre Kombination aus Betriebssystem und Architektur keine Binärdistribution verfügbar ist, können Sie versuchen, die Installation von der Quelle oder gccgo anstelle von gc durchzuführen.

Installieren von Go from source

peterSO
quelle
Die Installation von der Quelle ist eigentlich sehr schnell. Es wird schnell kompiliert und die Tests sind optional, wenn Sie sie überspringen möchten.
Jeremy Wall
3

Ich benutze diese Anweisung, um die neueste Version von zu installieren IMG:

  1. Entfernen Sie die vorhandene Go-Version:

    sudo apt-get purge golang*
  2. Installieren Sie die neueste Version von Go:

    sudo add-apt-repository ppa:longsleep/golang-backports
    sudo apt-get update
    sudo apt-get install golang-go
  3. Erstellen Sie die .profileDatei im Home-Pfad mit folgendem Inhalt:

    # ~/.profile: executed by the command interpreter for login shells.
    # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
    # exists.
    # see /usr/share/doc/bash/examples/startup-files for examples.
    # the files are located in the bash-doc package.
    
    # the default umask is set in /etc/profile; for setting the umask
    # for ssh logins, install and configure the libpam-umask package.
    #umask 022
    
    # if running bash
    if [ -n "$BASH_VERSION" ]; then
        # include .bashrc if it exists
        if [ -f "$HOME/.bashrc" ]; then
            . "$HOME/.bashrc"
        fi
    fi
    
    # set PATH so it includes user's private bin directories
    PATH="$HOME/bin:$HOME/.local/bin:$PATH"
  4. Setzen Sie den Arbeitsbereich Go auf die Umgebungsvariable:

    GOPATH=~/.go
  5. Übernehmen Sie die .profileKonfiguration:

    source ~/.profile

Prüfung:

$ go version
go version go1.11.1 linux/amd64

Ref: Go-GitHub-Installation

Benyamin Jafari
quelle
1

Laut dem Golang Github mit für Ubuntu ist es heutzutage möglich, die neueste Version von Go einfach per Snap zu installieren:

Die Verwendung von Druckknöpfen funktioniert auch ganz gut:

# This will give you the latest version of go
$ sudo snap install --classic go

Möglicherweise vorzuziehen, sich mit veralteten PPAs und / oder PPAs von Drittanbietern zu beschäftigen

kjones
quelle
0

Sie können auch das Update-Golang-Skript verwenden:

update-golang ist ein Skript zum einfachen Abrufen und Installieren neuer Golang-Versionen mit minimalem Systemeinbruch

git clone https://github.com/udhos/update-golang
cd update-golang
sudo ./update-golang.sh
Everton
quelle
0

Die beste Möglichkeit, Go unter Ubuntu zu installieren, besteht darin, die erforderliche Version von hier herunterzuladen . Hier könnten Sie alle Stable und Releases zusammen mit archivierten Versionen haben.

Nachdem Sie die ausgewählte Version heruntergeladen haben, können Sie weitere Schritte ausführen. Ich empfehle Ihnen, das tar.gz-Format für die Ubuntu-Maschine herunterzuladen:

  1. Entfernen Sie zunächst die ältere Version vollständig von Ihrer lokalen Version

sudo rm -rf /usr/local/go /usr/local/gocache

Dadurch wird die gesamte lokale Go-Code-Basis entfernt, aber warten Sie noch etwas, bis wir sie vollständig aus der lokalen entfernt haben. Ich habe diesen Schritt verpasst und es hat so lange gedauert, bis ich verstanden habe, was mir fehlt aufführen

sudo apt-get purge golang

oder

sudo apt remove golang-go
  1. Installieren / extrahieren Sie nun Ihre heruntergeladene Version von go inside / usr / local / go, indem Sie damit auf das Terminal klicken

tar -C /usr/local -xzf go1.10.8.linux-amd64.tar.gz

  1. Vergessen Sie nicht oder überprüfen Sie den GOROOTvariablen Wert, anhand dessen Sie den Wert überprüfen können, nachdem Sie alle oben genannten Schritte ausgeführt habengo env dann einstellenexport PATH=$PATH:/usr/local/go
  2. Testen Sie besser ein kleines Go-Programm, um sicherzugehen. Schreiben Sie dies hinein, /home/yourusername/go/test.phpwenn Sie den eingestellten GOPATHWert nicht geändert haben:
package main

import "fmt"

func main() {
    fmt.Println("hello world")
}
  1. Führen Sie dies durch go run test.go

Ich hoffe es funktioniert für dich !!

Ashutosh Rai
quelle
0

Oder vielleicht könnten Sie dieses Skript verwenden , um Go und LiteIDE zu installieren?

Wenn Sie mit der Antwort nicht zufrieden sind, kommentieren Sie dies bitte, anstatt blind abzustimmen. Ich habe dieses Setup in den letzten 4 Jahren ohne Probleme verwendet.

thoroc
quelle
-1
  1. Wenn Sie Ubuntu-Mate haben, können Sie die neueste Version installieren:

    umake gehen

  2. Ich habe ein Skript zum Herunterladen und Installieren des letzten Go von der offiziellen Website

     # Change these varialbe to where ever you feel comfortable
     DOWNLOAD_DIR=${HOME}/Downloads/GoLang
     INSTALL_DIR=${HOME}/App
     function install {
        mkdir -p ${DOWNLOAD_DIR}
        cd ${DOWNLOAD_DIR}
    
        echo "Fetching latest Go version..."
        typeset VER=`curl -s https://golang.org/dl/ | grep -m 1 -o 'go\([0-9]\)\+\(\.[0-9]\)\+'`
        if uname -m | grep 64 > /dev/null; then
            typeset ARCH=amd64
        else
            typeset ARCH=386
        fi
        typeset FILE=$VER.linux-$ARCH
    
        if [[ ! -e ${FILE}.tar.gz ]]; then
             echo "Downloading '$FILE' ..."
             wget https://storage.googleapis.com/golang/${FILE}.tar.gz
        fi
    
        echo "Installing ${FILE} ..."
        tar zxfC ${FILE}.tar.gz ${INSTALL_DIR}
        echo "Go is installed"
    }
    
    install

Richten Sie GOROOT, GOPATH und PATH ein:

export GOROOT=${INSTALL_DIR}/go
export GOPATH=<your go path>
export PATH=${PATH}:${GOROOT}/bin:${GOPATH}/bin
Enze Chi
quelle
-1

Sie können ein Skript von verwenden udhos/update-golang .

Hier ist ein Zweiliner als Beispiel (ausgeführt als root):

bash <(curl -s https://raw.githubusercontent.com/udhos/update-golang/master/update-golang.sh)
ln -vs /usr/local/go/bin/go* /usr/local/bin/
Kenorb
quelle