Go语言 围棋的多个版本

mfuanj7w  于 2023-03-06  发布在  Go
关注(0)|答案(7)|浏览(150)

我正试着按照这里的官方文件学习围棋:https://golang.org/doc/install
我在安装额外的go版本时遇到了麻烦,显然这一行应该安装一个不同版本的go,并在我的$PATH中提供可执行文件,但这并没有发生:

go get golang.org/dl/go1.10.7

相反我看到的是:

c.craig$ go get golang.org/dl/go1.10.7
c.craig$ go1.10.7 download
-bash: go1.10.7: command not found

我哪里错了?我试过用空格,假设这只是文档中的一个错别字,但即使这样也不起作用:

c.craig$ go get golang.org/dl/go1.10.7
c.craig$ go 1.10.7 download
go 1.10.7: unknown command
lrl1mhuk

lrl1mhuk1#

在.bash_profile中设置以下路径变量后(不要忘记运行:源代码~/.bash_配置文件)

$ export GOPATH=$HOME/go
$ export GOBIN=$HOME/go/bin

在一个终端中安装go版本:

$ go get golang.org/dl/go1.13.15
$ go1.13.15 download

现在你还想安装另一个go版本,比如说go1.15.13,方法是执行下面的命令(记住按照上面的方法设置路径)

$ go get golang.org/dl/go1.15.13
$ go1.15.13 download

现在你已经安装了两个go版本;第1.13.15节和第1.15.13节。
例如,在一个终端中,您希望使用版本1.13.15,以便可以在该终端窗口中创建如下别名:

$ alias go="go1.13.15"
$ go version
go version go1.13.15 darwin/amd64

在另一个终端中,您可以切换到不同的版本

$ alias go="go1.15.13"
$ go version
go version go1.15.13 darwin/amd64
rn0zuynd

rn0zuynd2#

二进制文件安装在$HOME/go/bin(或者更准确地说,安装在从go env GOPATH获得的路径下的bin目录中)。go get命令不会更新$PATH,因此您需要自己将安装目录添加到$PATH中。

xytpbqjk

xytpbqjk3#

您可能希望尝试Go Version Managergvm):

curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer | bash
gvm listall
gvm install go1.10.7 [-B] 
gvm use go1.10.7 [--default]
gvm list

如果您想从源代码编译,但没有安装go

gvm install go1.4 -B
gvm use go1.4
#CGO_ENABLED=0
export GOROOT_BOOTSTRAP=$GOROOT
gvm install go1.10.7
gvm use go1.10.7

如果遇到编译错误,您可能希望在从源代码编译之前取消注解CGO_ENABLED=0

sg3maiej

sg3maiej4#

我在尝试安装版本1.17.11时遇到了同样的问题,我的基础版本是1.18.2。
按照这里的https://go.dev/doc/manage-install的指示,但它不为我工作。然后,我意识到,运行go install golang.org/dl/go<version>@latest(其中<version>是你需要的版本)后,一个二进制文件名go<version>将下载到$HOME/go/bin/
移动到$HOME/go/bin/,运行./go<version> download,您需要的版本将在$HOME/sdk/下载
要使用您刚刚下载的版本,请将此行添加到~/.bashrc文件的末尾:

alias go<version>=$HOME/sdk/go<version>/bin/go

保存并退出,运行source ~/.bashrc执行!

v2g6jxz6

v2g6jxz65#

我还发现使用此工具在版本之间切换很有用:Freshgo - https://nikfot.github.io/freshgo/这是一个go二进制文件,易于安装(linux)。
我很容易从源代码安装Go版本,并且可以保留Go源文件的备份,所以如果你在版本之间切换,你可以从Go Pkg下载中节省一些时间。
就这么简单:

freshgo select -v 1.19

我还将其安装在shell中,以检查最新版本,并提供了一个就绪脚本:

echo "${PATH to freshgo repo}/check_ver.sh" >>  ~/.profile
ni65a41a

ni65a41a6#

我遇到了和你一样的问题,在我知道go是向后兼容的之后,我把/usr/local/go/bin/go复制到/usr/local/go/bin/go{version}。

bvhaajcl

bvhaajcl7#

对于Mac用户来说更容易,我想Linux用户也应该类似,你只需要:
1.使用GO的现代版本,即〉= 1.12
1.确保你可以运行go version
1.浏览你需要的版本:https://go.dev/dl/假设您想下载go1.13.15,您可以运行以下命令(我认为@latest是可选的):go install golang.org/dl/go1.13.15@latest,如果什么都没发生,那么一切都很好。
1.因为你需要更新你的路径,你可以这样做,也可以打开一个新的终端。
1.运行以下命令:go1.13.15 download
1.现在你可以在$HOME/sdk/go1.13.15中找到一个新的目录,这是你新安装的GO所在的地方。
1.使用以下命令更新您的GOROOT环境变量以使用您的工作区:export GOROOT=$HOME/sdk/go1.13.15
1.最后键入go version,您应该看到

go version go1.13.15 darwin/amd64

相关问题