为了账号安全,请及时绑定邮箱和手机立即绑定

在 ubuntu 上进行设置

在 ubuntu 上进行设置

Go
慕雪6442864 2021-11-08 15:58:44
我正在尝试在 Ubuntu 上设置一个 go dev 环境,但没有运气。按照这里的指示https://github.com/golang/go/wiki/Ubuntusudo apt-get install golang然后我mkdir $HOME/golangexport GOPATH=$HOME/golang没有骰子。即使做一些简单的事情也会go version引发以下错误:go: cannot find GOROOT directory: /usr/local/opt/go/libexec我在网上到处都说根本就不要设置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"
查看完整描述

3 回答

?
吃鸡游戏

TA贡献1829条经验 获得超7个赞

在我的 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

添加转到您的 $PATH 变量


$ mkdir $HOME/go

$ nano ~/.bashrc

export GOPATH=$HOME/go

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

$ source ~/.bashrc

这很好用。


查看完整回答
反对 回复 2021-11-08
?
红颜莎娜

TA贡献1842条经验 获得超12个赞

所以我最终想通了这一点,我的孩子是愚蠢的。我有一个有效的脚本$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 网站安装

  • GOROOT 是指 go 内部文件所在的文件夹,所以基本上是系统上存在的内容tar.gz。通常/usr/local/go

  • GOHOME 不需要设置。如果您设置它,请使用unset

  • GOPATH 是您工作区的位置,您需要mkdir创建该文件夹并设置 GOPATH 环境变量。

  • 需要包含您的路径才能$GOROOT/bin:$GOPATH/bin使设置正常运行。

自定义脚本的使用情况影响.zshrcbashrcprofile不应该包含的设置$GOROOT


查看完整回答
反对 回复 2021-11-08
?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

对于来自 Ubuntu 存储库的 golang-go

这个答案指的是来自默认 Ubuntu 存储库的 golang-go 包,而不是可以使用 ubuntu-make 安装的 go-lang 包。

理解您的问题的关键是以下几行:

GOROOT="/usr/local/opt/go/libexec"

如果您输入命令echo $GOROOT,它将返回:

/usr/local/opt/go/libexec

这不是您希望 GOROOT 在从默认 Ubuntu 存储库安装 golang-go 时的样子。在 Ubuntu 的默认 golang-go 安装中,GOROOT 是指安装 go 的目录的根目录。运行该命令which go返回/usr/bin/go并检查该/usr/bin/go文件显示它是符号链接到位于/usr/lib/go-1.6/bin/go. 有你失踪的 GOROOT。如果你使用命令安装golang-go sudo apt install golang-goGOROOT是golang-go安装的所有go文件的根目录;它是/usr/lib/go-1.6

仍然可以/etc/environment通过使用以下命令在 nano 文本编辑器中编辑环境文件来应用 GOROOT 中的更改:

sudo nano /etc/environment

在它说PATH="/etc/environment后面插入以下文本以将其添加到 PATH:

/usr/lib/go-1.6:

按键盘组合CtrlO,然后按Enter将在 nano 中编辑的文件保存到当前位置。按键盘组合Ctrl+X退出 nano。

:后面的字符/usr/lib/go-1.6是分隔符,它将 go 路径与下一个路径分开。建议使用以下命令检查您的工作的准确性:

cat /etc/environment

现在您已经更新了 PATH,您需要/etc/environment通过注销并重新登录来重新加载。


查看完整回答
反对 回复 2021-11-08
  • 3 回答
  • 0 关注
  • 220 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信