Cara menginstal versi Go di Ubuntu Precise saat ini


141

Berjalan sudo apt-get install golang-stable, saya mendapatkan versi Go go1.0.3. Apakah ada cara untuk menginstal go1.1.1?


1
Pada akhirnya saya harus menginstal dari sumber. Tidak semua tes lulus tetapi tampaknya berfungsi baik.
Sofia

1
"Tidak semua tes lulus tetapi tampaknya berfungsi baik." @ofia versi Ubuntu apa yang Anda gunakan? Saya tidak akan mengharapkan kegagalan pengujian kecuali Anda menjalankan versi Ubuntu yang sangat lama atau Anda tidak sengaja menginstal "tip" vs. "stable".
voidlogic

Saya menggunakan ubuntu dengan tepat. Tetapi menginstal versi terbaru dari repo duh / golang tidak melaporkan masalah, jadi tidak yakin apa masalahnya.
Sofia

Saya juga menggunakan tepat. Apakah Anda menjalankan "tip pembaruan hg" atau "rilis pembaruan hg". Jika Anda tidak ingat melihat kembali file sejarah bash Anda. Menggunakan tip mungkin menjelaskan kegagalan tes.
voidlogic

Jawaban:


110

Saya menemukan repo yang memiliki versi terbaru: https://launchpad.net/~duh/+archive/golang/+packages . Jadi pada dasarnya lakukan:

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

Untuk mengkonfirmasi:

go version

yang keluaran dalam kasus saya (tepat Ubuntu)

go version go1.1.1 linux/amd64

Dari sana cukup ekspor pengaturan yang Anda perlukan ke bash_rc atau yang setara:

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

39
Jadi pada 2014 Juli, ini tidak lagi memiliki versi terbaru dari Go. Versi saat ini adalah 1.3. Setelah mencoba ini di Ubuntu 12.04, saya berakhir dengan versi 1.1.1.
425nesp

4
Harap perbarui ini. Pada Sep 2014, saya juga berakhir dengan "go1.1.2"
Riccardo

2
Pada 2014-10-24, saya mendapat 1.2.1 linux / amd64.
nairware

5
Check in pada 29 Maret 2015. Ppa itu merespons dengan 404.
btleffler

7
Saya menggunakanppa:evarlast/golang1.4
Natim

98

Saya suka menggunakan GVM untuk mengelola versi Go saya di kotak Ubuntu saya. Cukup mudah digunakan, dan jika Anda terbiasa dengan RVM, itu adalah hal yang mulia. Ini memungkinkan Anda untuk menginstal banyak versi Go di sistem Anda dan beralih di antara versi mana pun yang Anda inginkan pada suatu titik waktu.

Instal GVM dengan:

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

dan kemudian semudah melakukan ini:

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

Bendera default di akhir perintah kedua akan menetapkan go1.1.1 sebagai versi Go default Anda setiap kali Anda memulai sesi terminal baru.


1
Saya suka RVM dan selalu menikmati alat yang bagus dalam kit saya. Senang melihat ketika saya masuk ke Go bahwa ada alat seperti GVM :)
Brenden

2
gvm adalah nama yang sama dengan untuk grails gvm
jcalloway

2
Saya baru saja mencoba menggunakan GVM di bawah cangkang ikan, dan peringatan bagi mereka yang tidak menggunakan bash: GVM akan menyusahkan untuk bangkit dan berjalan dengan benar. Banyak skripnya tidak memiliki garis shebang misalnya.
Dennis

halaman web "GVM" yang dirujuk https://github.com/moovweb/gvmtadalah 404 tidak ditemukan. Dan saya enggan untuk menginstal apa pun yang tampaknya tidak memiliki prosedur pembaruan keamanan sendiri
nealmcb

Saya tidak setuju bahwa itu semudah "gvm install" dan "gvm use".
hantu kemicofa

35

Saya menggunakan perintah berikut dari repositori resmi GoLang , ia menginstal GoLang versi 1.6 pada Ubuntu 14.04 saya

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

Referensi resmi GoLang Repo https://github.com/golang/go/wiki/Ubuntu tampaknya ppa ini akan selalu diperbarui di masa mendatang.


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

Dari tautan yang direferensikan:sudo add-apt-repository ppa:longsleep/golang-backports sudo apt-get update sudo apt-get install golang-go
Lee Richardson

23

[Oktober 2015] Jawab karena jawaban yang diterima saat sudo apt-get install golangini tidak mutakhir dan jika Anda tidak ingin menginstal GVMikuti langkah-langkah ini.

Instalasi langkah demi langkah:

  1. Unduh versi terbaru di sini (OS: Linux).
  2. Buka terminal Anda dan buka direktori Unduhan Anda
  3. sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
  4. Tambahkan goke jalur Andaexport PATH=$PATH:/usr/local/go/bin
  5. go version untuk memeriksa versi saat ini diinstal
  6. Mulai pemrograman.

Kemungkinan kesalahan + perbaikan: (akan diperbarui)

Jika Anda mendapatkan go version xgcc (Ubuntu 4.9.1-0ubuntu1) 4.9.1 linux/amd64maka Anda melakukan sesuatu yang salah, maka periksa pos ini: Go mencetak versi xgcc tetapi tidak menginstal versi yang diinstal


ini tidak punya armv7
Varun

17

saya menginstal dari sumber. ada tutorial langkah demi langkah di sini: http://golang.org/doc/install/source


2
Iya. Menginstal Go from source adalah cara terbaik untuk "Go". Sangat mudah untuk memperbarui seperti itu juga.
voidlogic

1
Saya mengikuti instruksi dari sini dan berhasil bagi saya golang.org/doc/install#tarball
Bogdan

1
Terima kasih banyak. Masih bekerja di Ubuntu 14.04 saya sementara PPA tidak. :-)
Ionică Bizău

1
Ini menjengkelkan sekarang karena Anda harus bootstrap 1.5+ dengan build 1.4+.
jocull

7

Ini adalah metode yang paling mudah dan sederhana yang saya temukan untuk menginstal go di Ubuntu 14.04 tanpa ppa atau alat lain.

Sampai sekarang, versi GO adalah 1.7

Dapatkan Go 1.7.tar.gz menggunakan wget

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

Ekstrak dan salin ke /usr/local/

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

Anda sekarang berhasil menginstal GO. Sekarang Anda harus mengatur Variabel Lingkungan sehingga Anda dapat menggunakan goperintah dari mana saja.

Untuk mencapai ini kita perlu menambahkan baris ke .bashrc Jadi,

sudo nano ~/.bashrc

dan tambahkan baris berikut ke akhir file.

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

Sekarang, Semua perintah masuk go/bin akan bekerja.

Periksa apakah instalasi berhasil dengan melakukan

go version

Untuk Dokumentasi offline dapat Anda lakukan

godoc -http=:6060

Dokumentasi offline akan tersedia di http://localhost:6060

CATATAN:

Beberapa orang di sini menyarankan untuk mengubah variabel PATH.

Itu bukan pilihan yang baik.

  1. Mengubah itu menjadi /usr/local/go/binbersifat sementara dan itu akan diatur ulang setelah Anda menutup terminal.

  2. go perintah hanya akan bekerja di terminal di mana Anda mengubah nilai PATH.

  3. Anda tidak akan dapat menggunakan perintah lain seperti ls, nanoatau hanya tentang segala sesuatu karena semuanya ada di /usr/binatau di lokasi lain. Semua hal itu akan berhenti bekerja dan itu akan mulai memberi Anda kesalahan.

Namun, ini permanen dan tidak mengganggu yang lainnya.


Anda perlu mendefinisikan env var GOPATH = / some / dir lalu mendefinisikan PATH = $ {GOPATH} / bin: $ {PATH} untuk kode proyek Anda sendiri
Scott Stensland

Ya, saya menggunakan VSCode jadi untuk menambahkan GOPATH saya hanya perlu mengedit gopath di pengaturan pengguna json. Terima kasih atas masukannya.
Ishan Jain

Ada kesalahan ketik kecil dalam perintah tar: am64 bukannya amd64
Adrian Lungu

1
@AdrianLungu Memperbaikinya.
Ishan Jain

1
sudo nano ~. / bashrc -> sudo nano ~ / .bashrc .. juga harus vim: p
GameKyuubi

4
  1. Unduh katakan, go1.6beta1.linux-amd64.tar.gzdari https://golang.org/dl/ ke/tmp

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

  1. batalkan tar ke /usr/local/bin

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

  1. Set GOROOT, GOPATH, [di ubuntu tambahkan berikut ke ~ / .bashrc]

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

  1. Memeriksa

go version harus ditunjukkan

go version go1.6beta1 linux/amd64

go env harus ditunjukkan

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"


Hai, terima kasih atas jawabannya, saya mengikuti semua langkah tetapi setiap kali saya memanggil "versi pergi" bukannya 1,7 itu membawa 1.4.2. Apakah ada tindakan lain yang harus dilakukan?
Anahit Serobyan

4

Jika seseorang mencari untuk menginstal Go 1.8, ikuti ini:

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

Dan kemudian instal go

sudo apt-get install golang-1.8-go

Bekerja dengan sempurna bagi saya. Terima kasih!
Gwyneth Llewelyn

1
Tidak perlu menginstal golang-1.8-go, itu sudah diinstal saat menginstal golang-go. Sebenarnya pada akhir April 2017, go 1.8.1 diinstal, versi terbaru. github.com/golang/go/wiki/Ubuntu
firepol

Saya kira Anda juga perlu mengatur GOROOT, GOPATH
Nam G VU

Referensi untuk pengaturan GOROOT dan GOPATH tepat di jawaban lain 1) stackoverflow.com/a/34384978/248616 2) stackoverflow.com/questions/17480044/... Referensi referensi lebih resmi stackoverflow.com/a/10847122/248616
Nam G VU

Untuk setiap proyek Go kami, atur GOPATH = / some / dir, PATH = $ {GOPATH} / bin: $ {PATH}
Nam G VU

4

Untuk rilis Go saat ini:

Bahasa Pemrograman Go

Mulai

Unduh distribusi Go

Unduhan

Klik tautan di atas untuk mengunjungi halaman unduhan Go project dan pilih distribusi biner yang cocok dengan sistem operasi dan arsitektur prosesor Anda.

Distribusi biner resmi tersedia untuk sistem operasi FreeBSD, Linux, macOS, dan Windows dan arsitektur prosesor 32-bit (386) dan 64-bit (amd64) x86.

Jika distribusi biner tidak tersedia untuk kombinasi sistem operasi dan arsitektur Anda, Anda mungkin ingin mencoba menginstal dari sumber atau menginstal gccgo alih-alih gc.

Menginstal Go from source


Instalasi dari sumber sebenarnya sangat cepat. Ini mengkompilasi dengan cepat dan tes bersifat opsional jika Anda memilih untuk melewatinya.
Jeremy Wall

3

Saya menggunakan instruksi ini untuk menginstal versi terbaru IMG:

  1. Hapus versi Go yang ada:

    sudo apt-get purge golang*
  2. Pasang versi terbaru Go:

    sudo add-apt-repository ppa:longsleep/golang-backports
    sudo apt-get update
    sudo apt-get install golang-go
  3. Buat .profilefile di jalur beranda dengan konten ini:

    # ~/.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. Setel ruang kerja Go ke variabel lingkungan:

    GOPATH=~/.go
  5. Terapkan .profilekonfigurasi:

    source ~/.profile

Uji:

$ go version
go version go1.11.1 linux/amd64

Ref: Go-GitHub-Installation


1

Saat ini menurut golang github dengan untuk Ubuntu , Anda dapat menginstal Go versi terbaru dengan mudah melalui snap:

Menggunakan buncis juga berfungsi dengan baik:

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

Berpotensi lebih disukai daripada rewel dengan PPA yang kedaluwarsa dan / atau pihak ketiga


0

Anda juga dapat menggunakan skrip pembaruan-golang:

update-golang adalah skrip untuk dengan mudah mengambil dan menginstal rilis Golang baru dengan intrusi sistem minimum

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

0

Cara terbaik untuk menginstal Go di Ubuntu adalah dengan mengunduh versi yang diperlukan dari sini . Di sini Anda dapat memiliki semua stabil dan rilis, bersama dengan versi yang diarsipkan.

setelah mengunduh versi yang Anda pilih, Anda dapat mengikuti langkah-langkah selanjutnya, saya akan menyarankan Anda untuk mengunduh format tar.gz untuk mesin ubuntu:

  1. pertama-tama hapus sepenuhnya versi lama dari lokal Anda dengan melakukan ini

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

ini akan menghapus semua basis kode go lokal tetapi menunggu sesuatu yang harus kita lakukan untuk menghapus sepenuhnya dari lokal, saya kehilangan langkah ini dan butuh banyak waktu sampai saya mengerti apa yang saya hilang jadi di sini adalah hal pembersihan untuk menghapus dari daftar

sudo apt-get purge golang

atau

sudo apt remove golang-go
  1. Sekarang instal / ekstrak versi unduh Anda di dalam / usr / local / go, dengan menekan terminal dengan ini

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

  1. Setelah melakukan semua hal di atas, jangan lupa atau periksa GOROOTnilai variabel Anda dapat memeriksa nilainya go envjika tidak disetelexport PATH=$PATH:/usr/local/go
  2. Lebih baik untuk menguji program go kecil untuk memastikan. tulis ini di dalam /home/yourusername/go/test.phpjika Anda belum mengubah GOPATHnilai yang ditetapkan :
package main

import "fmt"

func main() {
    fmt.Println("hello world")
}
  1. jalankan ini go run test.go

Saya harap ini berhasil untuk Anda !!


0

Atau mungkin Anda bisa menggunakan skrip ini untuk menginstal Go dan LiteIDE?

Jika Anda tidak puas dengan jawaban yang diberikan, silakan berkomentar daripada memilih secara membabi buta. Saya telah menggunakan pengaturan ini selama 4 tahun terakhir tanpa masalah.


-1
  1. Jika Anda memiliki ubuntu-mate, Anda dapat menginstal go terbaru dengan:

    umake pergi

  2. Saya memiliki skrip untuk mengunduh dan menginstal go terakhir dari situs web resmi

     # 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

Siapkan GOROOT, GOPATH, dan PATH Anda:

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

-1

Anda dapat menggunakan skrip dari udhos/update-golang.

Berikut ini adalah dua-liner sebagai contoh (jalankan sebagai 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/
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.