उबंटू सटीक में गो के वर्तमान संस्करण को कैसे स्थापित करें


141

रनिंग sudo apt-get install golang-stable, मुझे गो संस्करण मिलता है go1.0.3। क्या कोई तरीका है स्थापित करने के लिए go1.1.1?


1
अंत में मुझे स्रोत से स्थापित करना पड़ा। सभी परीक्षण पास नहीं हुए लेकिन यह ठीक काम कर रहा है।
सोफिया

1
"सभी परीक्षण पारित नहीं हुए, लेकिन यह ठीक काम कर रहा है।" @ सोफिया उबंटू के किस संस्करण का उपयोग कर रहे हैं? जब तक आप उबंटू का एक बहुत पुराना संस्करण नहीं चला रहे थे या आपने गलती से "टिप" बनाम "स्थिर" चला दिया था, तब तक मुझे परीक्षण विफलताओं की उम्मीद नहीं थी।
voidlogic

मैं ubuntu का उपयोग कर रहा हूँ सटीक। लेकिन रेपो डुह / गोलंग के नवीनतम संस्करण को स्थापित करने से कोई समस्या नहीं हुई, इसलिए यह निश्चित नहीं था कि समस्या क्या थी।
सोफिया

मैं भी सटीक उपयोग कर रहा हूं। क्या आपने "hg अपडेट टिप" या "hg अपडेट रिलीज़" चलाया था। यदि आपको याद नहीं है कि आप अपनी बैश इतिहास फ़ाइल में देखें। टिप का उपयोग करने से परीक्षण विफलताओं की व्याख्या हो सकती है।
voidlogic

1
आप इस ब्लॉग को आज़मा सकते हैं railskey.wordpress.com/2014/05/31/install-gogolang-on-ubuntu
प्रवीण मिश्रा

जवाबों:


110

मुझे एक रेपो मिला जिसमें नवीनतम संस्करण हैं: https://launchpad.net/~duh/+archive/golang/+packages । तो मूल रूप से करते हैं:

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

पुष्टि करने के लिए:

go version

जो मेरे मामले में आउटपुट (उबंटू सटीक)

go version go1.1.1 linux/amd64

वहां से बस उन सेटिंग्स को निर्यात करें जिनकी आपको bash_rc या समकक्ष आवश्यकता है:

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

39
2014 जुलाई तक, यह अब गो का नवीनतम संस्करण नहीं है। वर्तमान संस्करण 1.3 है। Ubuntu 12.04 पर यह कोशिश करने के बाद, मैंने संस्करण 1.1.1 के साथ समाप्त किया।
425nesp

4
कृपया इसे अपडेट करें। सितम्बर 2014 तक, मैं "go1.1.2" के साथ समाप्त होता हूं
Riccardo

2
२०१४-१०-२४ के अनुसार, मुझे १.२.१ लाइनक्स / एमड ६४ मिला।
नायरवेयर

5
29 मार्च, 2015 को जाँच की जा रही है। यह
ppa

7
मैंने इस्तेमाल कियाppa:evarlast/golang1.4
नटिम

98

मुझे अपने गो संस्करण को अपने Ubuntu बॉक्स में प्रबंधित करने के लिए GVM का उपयोग करना पसंद है । उपयोग करने के लिए बहुत आसान है, और यदि आप आरवीएम से परिचित हैं, तो यह एक अच्छा काम है। यह आपको अपने सिस्टम में गो के कई संस्करणों को स्थापित करने की अनुमति देता है और जो भी समय आप किसी भी समय चाहते हैं।

के साथ GVM स्थापित करें:

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

और फिर यह करना जितना आसान है:

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

जब भी आप एक नया टर्मिनल सत्र शुरू करते हैं, तो दूसरी कमांड के अंत में डिफ़ॉल्ट ध्वज आपके डिफ़ॉल्ट गो संस्करण के रूप में go1.1.1 सेट करेगा।


1
मुझे आरवीएम पसंद है और हमेशा अपनी किट में एक अच्छे उपकरण का आनंद लेता हूं। मुझे खुशी है कि जैसे ही मैं गो में पहुँचता हूँ, जीवीएम :)
ब्रेंडेन

2
gvm का नाम grav gvm के समान है
jcalloway

2
मैंने मछली के गोले के नीचे बस जीवीएम का उपयोग करने की कोशिश की, और उन लोगों के लिए चेतावनी है जो बैश का उपयोग नहीं करते हैं: जीवीएम ठीक से उठने और चलने में दर्द होगा। इसके कई लिपियों में उदाहरण के लिए एक शबंग रेखा नहीं है।
डेनिस

"GVM" वेब पेज संदर्भित https://github.com/moovweb/gvmt404 नहीं मिला है। और मैं कुछ भी स्थापित करने के लिए अनिच्छुक हूँ जो अपनी सुरक्षा अद्यतन प्रक्रिया के लिए नहीं लगता है
nealmcb

मैं इस बात से सहमत नहीं हूँ कि यह "gvm install" और "gvm उपयोग" जितना आसान है।
कीमिको घोस्ट

35

मैंने GoLang आधिकारिक रिपॉजिटरी से निम्न कमांड का उपयोग किया , इसने मेरे Ubuntu 14.04 पर GoLang संस्करण 1.6 स्थापित किया

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

संदर्भ आधिकारिक GoLang रेपो https://github.com/golang/go/wiki/Ubuntu ऐसा लगता है कि यह ppa हमेशा भविष्य में अपडेट किया जाएगा।


2
The team named '~ubuntu-lxc' has no PPA named 'ubuntu/lxd-stable'
कीनोरब

संदर्भित लिंक से:sudo add-apt-repository ppa:longsleep/golang-backports sudo apt-get update sudo apt-get install golang-go
ली रिचर्डसन

23

[अक्टूबर २०१५] उत्तर दें क्योंकि वर्तमान स्वीकृत उत्तर sudo apt-get install golangअपटूडेट नहीं है और यदि आप इंस्टॉल नहीं करना चाहते हैंGVM इन चरणों का पालन ।

कदम से कदम स्थापना:

  1. यहां नवीनतम संस्करण डाउनलोड करें (OS: Linux)।
  2. अपना टर्मिनल खोलें और अपनी डाउनलोड निर्देशिका में जाएं
  3. sudo tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
  4. goअपने पथ पर जोड़ेंexport PATH=$PATH:/usr/local/go/bin
  5. go version वर्तमान संस्करण की जाँच करने के लिए स्थापित
  6. प्रोग्रामिंग शुरू करें।

संभावित त्रुटियां + सुधार: (अपडेट किया जाना)

यदि आपको एक बार मिलता है go version xgcc (Ubuntu 4.9.1-0ubuntu1) 4.9.1 linux/amd64तो आपने कुछ गलत किया है, इसलिए इस पोस्ट को देखें : Go मुद्रण xgcc संस्करण है, लेकिन स्थापित संस्करण नहीं जाना है


यह नहीं है armv7
वरुण

17

मैं स्रोत से स्थापित यहाँ एक चरण-दर-चरण ट्यूटोरियल है: http://golang.org/doc/install/source


2
हाँ। स्रोत से गो स्थापित करना "गो" का सबसे अच्छा तरीका है। उस तरीके को भी अपडेट करना बहुत आसान है।
voidlogic

1
मैंने यहाँ से निर्देशों का पालन किया और यह मेरे लिए बहुत अच्छा काम किया golang.org/doc/install#tarball
Bogdan

1
बहुत बहुत धन्यवाद। अभी भी मेरे Ubuntu 14.04 पर काम कर रहा है, जबकि PPAs नहीं। :-)
आयनॉन् बिज़ेउ

1
यह अब कष्टप्रद है कि आपको 1.4+ बिल्ड के साथ 1.5+ बूटस्ट्रैप करना होगा।
jocull

7

यहाँ पर सबसे सीधा और सरल तरीका है जिसे मैंने Ubuntu 14.04 पर बिना किसी ppa या किसी अन्य टूल के साथ इंस्टॉल करने के लिए पाया।

अब तक, GO का संस्करण 1.7 है

जाओ 1.7.tar.gz wget का उपयोग करें

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

इसे निकालें और इसे कॉपी करें /usr/local/

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

आपने अब GO को सफलतापूर्वक इंस्टॉल कर लिया है। अब आपको पर्यावरण चर सेट करना होगा ताकि आप goकहीं से भी कमांड का उपयोग कर सकें।

इसे प्राप्त करने के लिए हमें .bashrc So,

sudo nano ~/.bashrc

और फ़ाइल के अंत में निम्न पंक्ति जोड़ें।

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

अब, सभी कमांड में go/bin काम करेंगे।

जांचें कि क्या इंस्टॉल करने से सफल हुआ था

go version

ऑफ़लाइन दस्तावेज़ के लिए आप कर सकते हैं

godoc -http=:6060

ऑफ़लाइन प्रलेखन पर उपलब्ध होगा http://localhost:6060

ध्यान दें:

यहाँ कुछ लोग पथ परिवर्तन को बदलने का सुझाव दे रहे हैं।

यह एक अच्छा विकल्प नहीं है।

  1. इसे बदलना /usr/local/go/binअस्थायी है और टर्मिनल बंद करते ही यह रीसेट हो जाएगा।

  2. go कमांड केवल टर्मिनल में काम करेगा जिसमें आपने PATH का मान बदल दिया है।

  3. आप किसी भी अन्य कमांड का उपयोग नहीं कर सकते हैं जैसे कि ls, nanoया सब कुछ के बारे में क्योंकि बाकी सब कुछ /usr/binअन्य स्थानों में या उसके पास है। वे सभी चीजें काम करना बंद कर देंगी और यह आपको त्रुटि देना शुरू कर देगा।

हालांकि, यह स्थायी है और कुछ और परेशान नहीं करता है।


आपको अपने स्वयं के प्रोजेक्ट कोड के लिए env var GOPATH = / / कुछ / dir को परिभाषित करना होगा, फिर PATH = $ {GOPATH} / bin: $ {PATH} को
परिभाषित करना होगा

हां, मैं GSCATH को जोड़ने के लिए VSCode का उपयोग करता हूं। मुझे केवल उपयोगकर्ता सेटिंग json में गोपाठ को संपादित करने की आवश्यकता है। इनपुट के लिए धन्यवाद।
ईशान जैन

टार कमांड में एक छोटा टाइपो है: am64 के बजाय am64
एड्रियन

1
@ AdrianLungu ने इसे तय किया।
इशान जैन

1
sudo नैनो ~ / bashrc -> sudo नैनो ~ / .bashrc .. भी vim होना चाहिए: पी।
GameKyuubi

4
  1. डाउनलोड कहते हैं, go1.6beta1.linux-amd64.tar.gzसे https://golang.org/dl/ में/tmp

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

  1. अन-टार /usr/local/bin

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

  1. GOROOT, GOPATH को सेट करें, [ubuntu पर ~ / .bashrc के बाद जोड़ें]

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

  1. सत्यापित करें

go version दिखाना चाहिए

go version go1.6beta1 linux/amd64

go env दिखाना चाहिए

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"


नमस्ते, उत्तर के लिए धन्यवाद, मैं सभी चरणों का पालन कर रहा हूं, लेकिन जब भी मैं 1.7 के बजाय "गो संस्करण" कहता हूं तो यह 1.4.2 लाता है। क्या कोई अन्य कार्य है जो किया जाना चाहिए?
अनाहत सेरोबायन

4

यदि कोई व्यक्ति Go 1.8 को इनस्टॉल करने के लिए देख रहा है, तो निम्न का अनुसरण करें:

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

और फिर go install करें

sudo apt-get install golang-1.8-go

मेरे लिए निर्दोष काम करता है। धन्यवाद!
ग्वेनेथ लेलेवलिन

1
स्थापित करने की आवश्यकता नहीं है golang-1.8-go, यह पहले से ही स्थापित होने पर स्थापित है golang-go। वास्तव में अप्रैल 2017 के अंत तक, 1.8.1 जाओ , नवीनतम संस्करण है। github.com/golang/go/wiki/Ubuntu
फायरपूल

मुझे लगता है कि आपको
Nam G VU

GOROOT और GOPATH के लिए संदर्भ अन्य उत्तरों में सही सेटिंग 1) stackoverflow.com/a/34384978/248616 2) stackoverflow.com/questions/17480044/… अधिक आधिकारिक संदर्भ stackoverflow.com/a/10847122/248616
Nam G VU

हमारे प्रत्येक गो प्रोजेक्ट के लिए, GOPATH = / some / dir, PATH = $ {GOPATH} / bin: $ {PATH}
Nam G VU

4

गो की वर्तमान रिलीज़ के लिए:

गो प्रोग्रामिंग भाषा

शुरू करना

गो वितरण डाउनलोड करें

डाउनलोड

गो प्रोजेक्ट के डाउनलोड पेज पर जाने के लिए ऊपर दिए गए लिंक पर क्लिक करें और अपने ऑपरेटिंग सिस्टम और प्रोसेसर आर्किटेक्चर से मेल खाने वाले बाइनरी वितरण का चयन करें।

आधिकारिक बाइनरी वितरण FreeBSD, Linux, macOS, और विंडोज ऑपरेटिंग सिस्टम और 32-बिट (386) और 64-बिट (amd64) x86 प्रोसेसर आर्किटेक्चर के लिए उपलब्ध हैं।

यदि ऑपरेटिंग सिस्टम और आर्किटेक्चर के संयोजन के लिए एक द्विआधारी वितरण उपलब्ध नहीं है, तो आप स्रोत से स्थापित करने या gcgo के बजाय gcgo स्थापित करने का प्रयास कर सकते हैं।

स्रोत से जाओ स्थापित करना


स्रोत से संस्थापन वास्तव में बहुत तेज़ है। यह तेजी से संकलित करता है और यदि आप उन्हें छोड़ना चुनते हैं तो परीक्षण वैकल्पिक हैं।
जेरेमी वॉल

3

के नवीनतम संस्करण को स्थापित करने के लिए मैं इस निर्देश का उपयोग करता हूं आईएमजी:

  1. मौजूदा गो संस्करण निकालें:

    sudo apt-get purge golang*
  2. Go के नवीनतम संस्करण को स्थापित करें:

    sudo add-apt-repository ppa:longsleep/golang-backports
    sudo apt-get update
    sudo apt-get install golang-go
  3. .profileइस सामग्री के साथ होम पथ में फ़ाइल बनाएँ :

    # ~/.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. कार्य चर को पर्यावरण चर पर सेट करें:

    GOPATH=~/.go
  5. .profileकॉन्फ़िगरेशन लागू करें:

    source ~/.profile

परीक्षा:

$ go version
go version go1.11.1 linux/amd64

रेफरी: गो-गिटहब-इंस्टॉलेशन


1

इन दिनों उबंटू के लिए गोलंग गीथूब के अनुसार , गो के नवीनतम संस्करण को एक स्नैप के माध्यम से आसानी से स्थापित करना संभव है:

स्नैप्स का उपयोग करना भी काफी काम आता है:

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

पुरानी और / या 3 पार्टी पीपीए के साथ उपद्रव करने के लिए संभावित रूप से बेहतर


0

आप अद्यतन-गोलांग स्क्रिप्ट का उपयोग भी कर सकते हैं:

अपडेट-गोलंग न्यूनतम प्रणाली घुसपैठ के साथ आसानी से नए गोलंग रिलीज को स्थापित करने और स्थापित करने के लिए एक स्क्रिप्ट है

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

0

गो पर उबंटू स्थापित करने का सबसे अच्छा तरीका यहां से आवश्यक संस्करण डाउनलोड करना है । यहां आपके पास संग्रहीत संस्करणों के साथ सभी स्थिर और रिलीज़ हो सकते हैं।

चयनित संस्करण डाउनलोड करने के बाद आप आगे के चरणों का पालन कर सकते हैं, मैं आपको ubuntu मशीन के लिए tar.gz प्रारूप डाउनलोड करने का सुझाव दूंगा:

  1. सबसे पहले अपने स्थानीय से पुराने संस्करण को पूरी तरह से हटा दें

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

यह सभी लोकल गो कोड बेस को हटा देगा, लेकिन स्थानीय से पूरी तरह से हटाने के लिए हमें कुछ और इंतजार करना होगा, मैं इस कदम को याद नहीं कर रहा था और मुझे इतना समय लग गया जब तक मुझे समझ नहीं आया कि मैं क्या याद कर रहा हूं, इसलिए यहां से हटाने के लिए शुद्ध सामान है सूची

sudo apt-get purge golang

या

sudo apt remove golang-go
  1. अब इसके साथ टर्मिनल मारकर अपने अंदर / गो / स्थानीय / जाने के डाउनलोड संस्करण को स्थापित / निकालें

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

  1. उपरोक्त सभी सामान करने के बाद, यदि आप तब सेट नहीं करते हैं, तो GOROOTआप चर मान को भूल नहीं सकते या जाँच नहीं कर सकतेgo envexport PATH=$PATH:/usr/local/go
  2. सुनिश्चित करने के लिए एक छोटे से गो कार्यक्रम का परीक्षण करना बेहतर है। /home/yourusername/go/test.phpयदि आपने सेट GOPATHमान नहीं बदला है तो इसे अंदर लिखें :
package main

import "fmt"

func main() {
    fmt.Println("hello world")
}
  1. इसे चलाएं go run test.go

आशा है कि ये आपके काम आएगा!!


0

या शायद आप इस स्क्रिप्ट का उपयोग कर सकते हैं का गो और लाइटाइड को स्थापित करने के लिए कर सकें?

यदि आप प्रदान किए गए उत्तर से नाखुश हैं, तो कृपया आँख बंद करके मतदान करने के बजाय टिप्पणी करें। मैंने पिछले 4 वर्षों से बिना किसी समस्या के इस सेटअप का उपयोग किया है।


-1
  1. यदि आपके पास ubuntu-mate है, तो आप नवीनतम द्वारा स्थापित कर सकते हैं:

    उमक जाओ

  2. मेरे पास आधिकारिक वेबसाइट से अंतिम गो डाउनलोड और इंस्टॉल करने की स्क्रिप्ट है

     # 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 और PATH सेट करें:

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

-1

आप एक स्क्रिप्ट का उपयोग कर सकते हैं udhos/update-golang

यहाँ एक दो-लाइनर उदाहरण के रूप में है (रन के रूप में 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/
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.