現在のバージョンのGoをUbuntu Preciseにインストールする方法


141

実行中sudo apt-get install golang-stable、Goバージョンを取得しgo1.0.3ます。インストールする方法はありますgo1.1.1か?


1
最後に、ソースからインストールする必要がありました。すべてのテストに合格したわけではありませんが、問題なく動作しているようです。
ソフィア

1
「すべてのテストに合格したわけではありませんが、問題なく動作しているようです。」@sofiaどのバージョンのUbuntuを使用していますか?Ubuntuの非常に古いバージョンを実行しているか、誤って「tip」と「stable」をインストールしていない限り、テストの失敗は予想しません。
voidlogic 2013

私は正確にubuntuを使用しています。しかし、レポduh / golangから最新バージョンをインストールしても問題は報告されなかったため、何が問題なのかはわかりません。
ソフィア

精密にも使用しています。「hg update tip」または「hg update release」を実行しましたか。思い出せない場合は、bash履歴ファイルを見直してください。tipを使用すると、テストの失敗を説明できる場合があります。
voidlogic 2013

1
このブログを試すことができますrailskey.wordpress.com/2014/05/31/install-gogolang-on-ubuntu
Pravin Mishra

回答:


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

私の場合に出力する(Ubuntu正確)

go version go1.1.1 linux/amd64

そこから、bash_rcまたは同等のものに必要な設定をエクスポートします。

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

39
したがって、2014年7月の時点で、最新バージョンのGoはありません。現在のバージョンは1.3です。これをUbuntu 12.04で試した後、バージョン1.1.1になりました。
425nesp 14

4
これを更新してください。2014年9月の時点で、私も "go1.1.2"で終了します
Riccardo

2
2014-10-24現在、1.2.1 linux / amd64を入手しています。
nairware 2014年

5
404と2015それPPAの応答3月29日にチェックイン
btleffler

7
私が使用したppa:evarlast/golang1.4
Natim

98

私は、UbuntuボックスでGoバージョンを管理するためにGVMを使用するのが好きです。使い方はいたって簡単で、RVMに慣れていれば簡単です。Goの複数のバージョンをシステムにインストールして、いつでも必要なバージョンに切り替えることができます。

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

2番目のコマンドの最後にあるデフォルトのフラグは、新しいターミナルセッションを開始するたびに、go1.1.1をデフォルトのGoバージョンに設定します。


1
私はRVMが好きで、常に自分のキットで優れたツールを楽しんでいます。Goに入ると、GVMのようなツールがあることを確認できてうれしい:)
ブレンデン

2
gvmはgrails gvmと同じ名前です
jcalloway '23

2
fishシェルでGVMを使用してみましたが、bashを使用していない人への警告:GVMは適切に起動して実行するのに苦労します。たとえば、そのスクリプトの多くにはシバン行がありません。
デニス

参照されている「GVM」のWebページhttps://github.com/moovweb/gvmtは404が見つかりません。また、独自のセキュリティ更新手順がないように見えるものをインストールするのは気が進まない
nealmcb '10

「gvm install」や「gvm use」と同じくらい簡単であることに同意しません。
kemicofaゴースト

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 Repo https://github.com/golang/go/wiki/Ubuntuを参照してください。このPPA は今後も常に更新されるようです。


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

参照リンクから:sudo add-apt-repository ppa:longsleep/golang-backports sudo apt-get update sudo apt-get install golang-go
Lee Richardson、

23

[2015年10月] 現在受け入れられている回答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がありません
Varun

17

ソースからインストールしました。ここにステップバイステップのチュートリアルがあります:http : //golang.org/doc/install/source


2
はい。ソースからGoをインストールすることは、「Go」の最良の方法です。そのように更新することも非常に簡単です。
voidlogic 2013

1
私はここからの指示に従いました、それは私にとって本当にうまく いきましたgolang.org/doc/install#tarball
Bogdan

1
どうもありがとうございます。PPAが機能しないのに、私のUbuntu 14.04で作業しています。:-)
IonicăBizău

1
これは、1.5以降のビルドで1.5以降をブートストラップする必要があるので、迷惑です。
ジョクル

7

これは、ppaやその他のツールを使用せずにUbuntu 14.04にgoをインストールするために見つけた最も単純で簡単な方法です。

現在、GOのバージョンは1.7です

wgetを使用してGo 1.7.ta​​r.gzを入手する

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

注意:

ここの何人かの人々はPATH変数を変更することを提案しています。

それは良い選択ではありません。

  1. これを/usr/local/go/bin一時的に変更すると、ターミナルを閉じるとリセットされます。

  2. go コマンドは、PATHの値を変更したターミナルでのみ機能します。

  3. 他のls, nanoすべてが/usr/bin他の場所にあるか、他の場所にあるため、他のコマンドを使用することはできません。これらすべてが機能しなくなり、エラーが発生し始めます。

ただし、これは永続的なものであり、他のことには影響しません。


env var GOPATH = / some / dirを定義してから、独自のプロジェクトコードにPATH = $ {GOPATH} / bin:$ {PATH}を定義する必要があります
Scott Stensland '21

はい、VSCodeを使用しているため、GOPATHを追加するには、ユーザー設定jsonでgopathを編集するだけです。入力いただきありがとうございます。
Ishan Jain

tarコマンドに小さなタイプミスがあります:amd64ではなくam64
Adrian Lungu

1
@AdrianLungu修正しました。
Ishan Jain 2016

1
sudo nano〜。/ bashrc-> sudo nano〜/ .bashrc ..もvimである必要があります:p
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. un tar into /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ではなく「go version」を呼び出すと、1.4.2になります。他に実行すべきアクションはありますか?
Anahit Serobyan 2016年

4

誰かがGo 1.8のインストールを探しているなら、これに従ってください:

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

そして、goをインストールします

sudo apt-get install golang-1.8-go

完璧に動作します。ありがとう!
グウィネス・ルウェリン

1
をインストールする必要はありません。golang-1.8-goインストール時にすでにインストールされていgolang-goます。実は2017年4月末現在、最新バージョンのgo 1.8.1がインストールされています。 github.com/golang/go/wiki/Ubuntu
firepol

GOROOT、GOPATHも設定する必要があると思います
Nam G VU

他の回答でのGOROOTおよびGOPATH設定のリファレンス1)stackoverflow.com/a/34384978/248616 2)stackoverflow.com/questions/17480044/… その他の公式リファレンスstackoverflow.com/a/10847122/248616
Nam G VU

それぞれのGoプロジェクトについて、GOPATH = / some / dir、PATH = $ {GOPATH} / bin:$ {PATH}を設定します
Nam G VU

4

Goの現在のリリース:

Goプログラミング言語

入門

Goディストリビューションをダウンロードする

ダウンロード

上のリンクをクリックしてGoプロジェクトのダウンロードページにアクセスし、オペレーティングシステムとプロセッサアーキテクチャに一致するバイナリディストリビューションを選択してください。

公式のバイナリディストリビューションは、FreeBSD、Linux、macOS、およびWindowsオペレーティングシステムと、32ビット(386)および64ビット(amd64)x86プロセッサアーキテクチャで利用できます。

オペレーティングシステムとアーキテクチャの組み合わせでバイナリディストリビューションを利用できない場合は、ソースからインストールするか、gcの代わりにgccgoをインストールしてみてください。

ソースからGoをインストールする


ソースからのインストールは実際には非常に高速です。コンパイルは高速で、スキップすることを選択した場合のテストはオプションです。
Jeremy Wall

3

この手順を使用して、最新バージョンのをインストールします IMG:

  1. 既存のGoバージョンを削除します。

    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. Goワークスペースを環境変数に設定します。

    GOPATH=~/.go
  5. .profile構成を適用します。

    source ~/.profile

テスト:

$ go version
go version go1.11.1 linux/amd64

参照:Go-GitHub-Installation


1

最近、Ubuntu用golang githubによると、最新バージョンのGoをスナップで簡単にインストールできます。

スナップの使用も非常にうまく機能します。

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

古くなった、またはサードパーティのPPAを大騒ぎするよりも潜在的に好ましい


0

update-golangスクリプトを使用することもできます。

update-golangは、最小限のシステム侵入で新しいGolangリリースを簡単にフェッチしてインストールするためのスクリプトです

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

0

UbuntuにGoをインストールする最良の方法は、必要なバージョンをここからダウンロードすることです。ここでは、アーカイブされたバージョンとともに、すべての安定版とリリースを使用できます。

選択したバージョンをダウンロードしたら、次の手順を実行できます。ubuntuマシン用のtar.gz形式をダウンロードすることをお勧めします。

  1. まず、これを実行して、古いバージョンをローカルから完全に削除します

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

これはすべてのローカルgoコードベースを削除しますが、ローカルから完全に削除するために私たちがしなければならないことをもっと待っています。リスト

sudo apt-get purge golang

または

sudo apt remove golang-go
  1. これでターミナルを打って、ダウンロードしたバージョンのgoを/ usr / local / goにインストール/抽出します

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

  1. 上記のすべてを行った後、GOROOT変数の値を確認または確認してください。go env設定されていない場合は、値を確認できます。export 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

または、このスクリプトを使用することもできますを GoとLiteIDEをインストールか?

提供された回答に不満がある場合は、むやみに投票するのではなく、コメントしてください。このセットアップを過去4年間問題なく使用しました。


-1
  1. あなたがubuntu-mateを持っているなら、あなたは最新のgoをインストールすることができます:

    うまけいく

  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

例として2行のコードを次に示します(として実行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/
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.