我试图在Ubuntu上设置一个go dev环境,但没有运气.按照以下说明https://github.com/golang/go/wiki/Ubuntu
sudo apt-get install golang
Run Code Online (Sandbox Code Playgroud)
然后我
mkdir $HOME/golang
export GOPATH=$HOME/golang
Run Code Online (Sandbox Code Playgroud)
没有骰子.即使做一些简单的事情也会go version引发以下错误:
go: cannot find GOROOT directory: /usr/local/opt/go/libexec
Run Code Online (Sandbox Code Playgroud)
我在网上看到的任何地方都说根本就没有设置GOROOT.请帮帮忙,我不明白从哪里开始.这是新VM上的全新安装.
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/isaac/golang"
GORACE=""
GOROOT="/usr/local/opt/go/libexec"
GOTOOLDIR="/usr/local/opt/go/libexec/pkg/tool/linux_amd64"
TERM="dumb"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CXX="g++"
CGO_ENABLED="1"
Run Code Online (Sandbox Code Playgroud)
在我安装的ubuntu机器上,按照以下简单步骤操作:
$ wget https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz
$ sudo tar -C /usr/local -xzf go1.4.2.linux-amd64.tar.gz
$ rm go1.4.2.linux-amd64.tar.gz
Run Code Online (Sandbox Code Playgroud)
添加转到$ PATH变量
$ mkdir $HOME/go
$ nano ~/.bashrc
export GOPATH=$HOME/go
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin
$ source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)
这工作得很好.
所以我最终想通了这一点,我的孩子是愚蠢的。我有一个有效的脚本$GOROOT,并且学到了很多东西。以下是重要的教训:
sudo apt-get install golang它已经过时,这样做意味着您现在必须恢复安装。sudo apt-get install golang-go也已经过时了。只是不要使用apt-get.sudo apt-get purge golang 不会重置环境变量或删除所有与 go 相关的文件夹。unset GOPATH GOHOME GOROOT 在尝试另一个安装之前进行重要的清理
只能通过tar.gzgolang 网站安装
tar.gz。通常/usr/local/gounsetmkdir创建该文件夹并设置 GOPATH 环境变量。$GOROOT/bin:$GOPATH/bin使设置正常运行。自定义脚本的使用情况影响.zshrc或bashrc或profile不应该包含的设置$GOROOT!