Ubuntu Precise'da Go'nun mevcut sürümü nasıl kurulur


141

Çalışıyor sudo apt-get install golang-stable, Go sürümünü alıyorum go1.0.3. Yüklemenin bir yolu var mı go1.1.1?


1
Sonunda kaynaktan yüklemek zorunda kaldım. Tüm testler geçmedi ama iyi çalışıyor gibi görünüyor.
Sofya

1
"Tüm testler geçmedi ama iyi çalışıyor gibi görünüyor." @sofia Hangi Ubuntu sürümünü kullanıyorsunuz? Ubuntu'nun çok eski bir sürümünü çalıştırmıyorsanız veya yanlışlıkla "ipucu" veya "kararlı" yı yüklemediyseniz test hatalarını beklemezdim.
voidlogic

Ubuntu'yu hassas kullanıyorum. Ancak repo duh / golang'dan en son sürümü yüklemek herhangi bir sorun bildirmedi, bu yüzden sorunun ne olduğundan emin değilim.
Sofya

Ben de hassas kullanıyorum. "Hg güncelleme ipucu" veya "hg güncelleme sürümü" çalıştırdınız mı? Hatırlamıyorsanız, bash geçmiş dosyanıza tekrar bakın. Uç kullanılması test hatalarını açıklayabilir.
voidlogic

Yanıtlar:


110

En son sürümlere sahip bir repo buldum: https://launchpad.net/~duh/+archive/golang/+packages . Temel olarak şunu yapın:

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

Onaylamak:

go version

benim durumumda hangi çıktılar (Ubuntu hassas)

go version go1.1.1 linux/amd64

Oradan bash_rc veya eşdeğeri olacak ayarları dışa aktarmanız yeterlidir:

export GOROOT=/usr/lib/go
export GOBIN=/usr/bin/go

39
Yani 2014 Temmuz itibariyle, artık Go'nun en son sürümüne sahip değil. Mevcut sürüm 1.3. Bunu Ubuntu 12.04'te denedikten sonra 1.1.1 sürümü ile sonuçlandım.
425nesp

4
Lütfen bunu güncelleyin. Eylül 2014 itibarıyla, "go1.1.2" ile bitiriyorum
Riccardo

2
2014-10-24 itibariyle 1.2.1 linux / amd64 aldım.
nairware

5
Check-

7
Kullandımppa:evarlast/golang1.4
Natim

98

GVM kullanmayı seviyorumUbuntu kutumda Go sürümlerimi yönetmek . Kullanımı oldukça basittir ve RVM hakkında bilginiz varsa, bu bir beyinsizdir. Sisteminizde birden çok Go sürümünün yüklü olmasını ve istediğiniz zaman istediğiniz sürüm arasında geçiş yapmanızı sağlar.

GVM'yi aşağıdakilerle yükleyin:

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

ve bunu yapmak kadar kolay:

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

İkinci komutun sonundaki varsayılan bayrak, yeni bir terminal oturumu başlattığınızda go1.1.1'i varsayılan Go sürümünüz olarak ayarlar.


1
RVM'yi seviyorum ve kitimde her zaman iyi bir aracın tadını çıkarıyorum. Go'ya girerken GVM gibi bir araç olduğunu gördüğüme sevindim :)
Brenden

2
gvm grails ile aynı isimdir gvm
jcalloway

2
Sadece balık kabuğunun altında GVM kullanmayı denedim ve bash kullanmayanlara bir uyarı: GVM düzgün bir şekilde kalkmak ve çalışmak için bir acı olacaktır. Örneğin, senaryolarının çoğunda bir shebang satırı yoktur.
Dennis

başvurulan "GVM" web sayfası https://github.com/moovweb/gvmt404 bulunamadı. Ve kendi güvenlik güncelleme prosedürüne sahip görünmeyen bir şey yüklemeye isteksizim
nealmcb

"Gvm install" ve "gvm use" kadar kolay olduğunu kabul etmiyorum.
kemicofa hayalet

35

GoLang resmi deposundan aşağıdaki komutları kullandım , Ubuntu 14.04'üme GoLang sürüm 1.6'yı yükledi

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

Referans resmi GoLang Repo https://github.com/golang/go/wiki/Ubuntu Görünüşe göre bu ppa gelecekte her zaman güncellenecek.


2
The team named '~ubuntu-lxc' has no PPA named 'ubuntu/lxd-stable'
kenorb

Referans verilen bağlantıdan:sudo add-apt-repository ppa:longsleep/golang-backports sudo apt-get update sudo apt-get install golang-go
Lee Richardson

23

[Ekim 2015] Geçerli kabul edilen yanıt sudo apt-get install golanggüncel olmadığından ve yüklemek istemiyorsanız yanıtlayınGVM bu adımları izleyin.

Adım adım kurulum:

  1. En son sürümü buradan indirin (OS: Linux).
  2. Terminalinizi açın ve İndirilenler dizininize gidin
  3. sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
  4. Ekle gosenin yolunaexport PATH=$PATH:/usr/local/go/bin
  5. go version geçerli sürümü kontrol etmek için
  6. Programlamaya başlayın.

Olası hatalar + düzeltmeler: (güncellenecek)

Eğer bir go version xgcc (Ubuntu 4.9.1-0ubuntu1) 4.9.1 linux/amd64şey alırsanız yanlış bir şey yaptınız, bu yüzden bu gönderiye bakın : Go xgcc sürümünü yazdırıyor ancak yüklü sürümü gitmiyor


Bu armv7 yok
Varun

17

Kaynaktan yükledim. burada adım adım bir eğitici var: http://golang.org/doc/install/source


2
Evet. Go'yu kaynaktan yüklemek "Git" in en iyi yoludur. Bu şekilde güncellemek de çok kolay.
voidlogic

1
Talimatları buradan takip ettim ve benim için gerçekten güzel çalıştı golang.org/doc/install#tarball
Bogdan

1
Çok teşekkür ederim. PPA'lar hala Ubuntu 14.04 üzerinde çalışıyor. :-)
Ionică Bizău

1
Bu can sıkıcı bir 1.4+ derleme ile 1.5+ bootstrap zorunda.
jocull

7

İşte yüklemek için bulduğum en basit ileri ve basit yöntem, herhangi bir ppa veya başka bir araç olmadan Ubuntu 14.04'e gidin.

Şimdilik GO sürümü 1.7

Wget kullanarak Go 1.7.tar.gz'yi edinin

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

Ayıklayın ve kopyalayın /usr/local/

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

Şimdi GO'yu başarıyla yüklediniz. Şimdi, Ortam Değişkenlerinigo komutu her yerden kullanabilirsiniz.

Bunu başarmak için So'ya bir satır eklememiz gerekir .bashrc ,

sudo nano ~/.bashrc

ve dosyanın sonuna aşağıdaki satırı ekleyin.

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

Şimdi, tüm komutlar go/bin çalışacak.

Yüklemenin başarılı olup olmadığını kontrol edin

go version

Çevrimdışı Belgeler için şunları yapabilirsiniz

godoc -http=:6060

Çevrimdışı dokümantasyona şu adresten ulaşılabilir: http://localhost:6060

NOT:

Buradaki bazı insanlar PATH değişkenini değiştirmeyi öneriyor.

İyi bir seçim değil.

  1. Bunu değiştirmek /usr/local/go/bingeçicidir ve terminal kapatıldığında sıfırlanır.

  2. go komutu yalnızca PATH değerini değiştirdiğiniz terminalde çalışır.

  3. Her şey gibi ls, nanoveya hemen hemen her şey gibi başka bir komut kullanamazsınız çünkü her şey /usr/binbaşka yerlerde veya başka yerlerde bulunur. Tüm bunlar çalışmayı durduracak ve size hata vermeye başlayacaktır.

Ancak, bu kalıcıdır ve başka hiçbir şeyi rahatsız etmez.


kendi proje kodunuz için env var GOPATH = / some / dir tanımlamalı ve sonra PATH = $ {GOPATH} / bin: $ {PATH} tanımlamalısınız
Scott Stensland

Evet, GOPATH eklemek için VSCode kullanıyorum Sadece json kullanıcı ayarları gopath düzenlemek gerekir. Giriş için teşekkürler.
Ishan Jain

Katran komutunda küçük bir yazım hatası var: amd64 yerine am64
Adrian Lungu

1
@AdrianLungu Düzeltti.
Ishan Jain

1
sudo nano ~. / bashrc -> sudo nano ~ / .bashrc .. ayrıca vim olmalıdır: p
GameKyuubi

4
  1. , Söz indirin go1.6beta1.linux-amd64.tar.gzdan https://golang.org/dl/ içine/tmp

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

  1. katranı çıkarmak /usr/local/bin

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

  1. GOROOT, GOPATH, [olarak ubuntu ~ / .bashrc dizinine ekleyin]

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

  1. Doğrulayın

go version göstermeli

go version go1.6beta1 linux/amd64

go env göstermeli

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"


Merhaba, cevap için teşekkür ederim, tüm adımları izliyorum ama 1.7 yerine "go version" dediğimde 1.4.2 getiriyor. Yapılması gereken başka eylemler var mı?
Anahit Serobyan

4

Birisi Go 1.8'i yüklemek istiyorsa aşağıdakileri uygulayın:

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

Ve sonra go yükleyin

sudo apt-get install golang-1.8-go

Benim için kusursuz çalışıyor. Teşekkürler!
Gwyneth Llewelyn

1
Yüklemeye gerek yok golang-1.8-go, kurulum sırasında zaten yüklü golang-go. Aslında Nisan 2017 sonu itibariyle go 1.8.1'in en son sürümü yüklü. github.com/golang/go/wiki/Ubuntu
firepol

Sanırım ayrıca GOROOT, GOPATH
Nam G VU

Diğer cevaplarda doğru GOROOT ve GOPATH ayarı için referans 1) stackoverflow.com/a/34384978/248616 2) stackoverflow.com/questions/17480044/… Daha resmi başvuru stackoverflow.com/a/10847122/248616
Nam G VU

Git projemizin her biri için GOPATH = / some / dir, PATH = $ {GOPATH} / bin: $ {PATH}
Nam G VU

4

Go'nun şu anki sürümü için:

Go Programlama Dili

Başlangıç

Go dağıtımını indirin

İndirilenler

Git projesinin indirilenler sayfasını ziyaret etmek için yukarıdaki bağlantıyı tıklayın ve işletim sisteminizle ve işlemci mimarinizle eşleşen ikili dağılımı seçin.

FreeBSD, Linux, macOS ve Windows işletim sistemleri ile 32 bit (386) ve 64 bit (amd64) x86 işlemci mimarileri için resmi ikili dağıtımlar mevcuttur.

İşletim sistemi ve mimari kombinasyonunuz için ikili dağıtım yoksa, gc yerine kaynaktan yüklemeyi veya gccgo yüklemeyi deneyebilirsiniz.

Go kaynağından yükleme


Kaynaktan kurulum aslında çok hızlı. Hızlı derlenir ve atlamayı seçerseniz testler isteğe bağlıdır.
Jeremy Wall

3

En son sürümünü yüklemek için bu talimatı kullanıyorum IMG:

  1. Mevcut Go sürümünü kaldırın:

    sudo apt-get purge golang*
  2. Go'nun en son sürümünü yükleyin:

    sudo add-apt-repository ppa:longsleep/golang-backports
    sudo apt-get update
    sudo apt-get install golang-go
  3. Oluşturma .profileBu içerikle ev yolda dosyayı:

    # ~/.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. Go çalışma alanını ortam değişkenine ayarlayın:

    GOPATH=~/.go
  5. .profileYapılandırmayı uygulayın :

    source ~/.profile

Ölçek:

$ go version
go version go1.11.1 linux/amd64

Ref: Go-GitHub-Kurulumu


1

Ubuntu için golang github'a göre bu günlerde Go'nun en son sürümünü bir çırpıda kolayca kurmak mümkündür:

Çıtçıtların kullanılması da oldukça iyi çalışır:

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

Eski ve / veya 3. taraf PPA'larla uğraşmak için potansiyel olarak tercih edilebilir


0

Update-golang betiğini de kullanabilirsiniz:

update-golang , minimum sistem müdahalesi ile yeni Golang sürümlerini kolayca getirip yükleyen bir komut dosyasıdır

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

0

Go on Ubuntu'yu kurmanın en iyi yolu, gerekli sürümü buradan indirmektir . Burada arşivlenmiş sürümlerle birlikte tüm kararlı ve sürümlere sahip olabilirsiniz.

seçtiğiniz sürümü indirdikten sonra başka adımlar takip edebilirsiniz, ben ubuntu makine için tar.gz biçimini indirmenizi önerecektir:

  1. her şeyden önce bunu yaparak eski sürümü yerel olarak tamamen kaldırın

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

Bu tüm yerel go kod tabanı kaldıracak ama daha tamamen yerel kaldırmak için yapmak zorunda bir şey beklemek, bu adımı eksik ve ben ne eksik olduğunu anlayana kadar çok zaman aldı bu yüzden kaldırmak için tasfiye şeyler liste

sudo apt-get purge golang

veya

sudo apt remove golang-go
  1. Şimdi / usr / local / go içine indirilen go sürümünüzü, bununla terminali vurarak kurun / çıkarın

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

  1. yukarıdaki tüm şeyleri yaptıktan sonra, ayarlanmamışsa GOROOTdeğeri kontrol edebileceğiniz değişken değeri unutmayın veya kontrol edingo envexport PATH=$PATH:/usr/local/go
  2. Emin olmak için küçük bir go programı test etmek daha iyi. /home/yourusername/go/test.phpset GOPATHdeğerini değiştirmediyseniz bunu içine yazın :
package main

import "fmt"

func main() {
    fmt.Println("hello world")
}
  1. tarafından çalıştır go run test.go

umarım sizin için çalışır !!


0

Ya da belki bu betiği kullanabilirsiniz Go ve LiteIDE'ı yüklemek ?

Verilen cevaptan memnun değilseniz, lütfen körü körüne oy vermek yerine yorum yapın. Bu kurulumu son 4 yıldır sorunsuz bir şekilde kullandım.


-1
  1. Ubuntu-mate'iniz varsa, en son sürümü yükleyebilirsiniz:

    umake git

  2. Resmi web sitesinden son sürümü indirmek ve yüklemek için bir senaryom var

     # 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

GOROOT, GOPATH ve PATH ayarlarınızı yapın:

export GOROOT=${INSTALL_DIR}/go
export GOPATH=<your go path>
export PATH=${PATH}:${GOROOT}/bin:${GOPATH}/bin

-1

Kaynağından bir komut dosyası kullanabilirsiniz udhos/update-golang.

Örnek olarak iki astarlı (şu şekilde çalıştır 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/
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.