树莓派通过 apt-get 安装的golang不是最新的版本,只能通过源码编译安装
官方参考: https://golang.google.cn/doc/install/source
- 编译安装go编译器,通过go1.4源码
- 编译安装go1.11
所以,两次编译用一份源码,但是不同分支,go1.4 和 go1.11
- 首先go1.4
$ git clone https://github.com/golang/go.git
$ cp go go1.4 # 复制一份
$ cd go1.4 # 进入1.4
$ git branch -a # 查看所有分支
$ git checkout -b 1.4 origin/release-branch.go1.4 # 创建远程go1.4的本地分支并切换
$ cd src
$ ./make.bash # 构建编译器
$ export GOROOT_BOOTSTRAP=$HOME/go1.4 # 编译go1.11用到环境变量
- 然后go1.11
$ cd ~/go
$ git checkout -b 1.11 origin/release-branch.go1.11 # 创建远程go1.11的本地分支并切换
$ cd src
$ ./all.bash #编译
等待这样的结果出现,可以喝几杯咖啡去了,真得很慢,╮(╯▽╰)╭:
ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/you/go.
Installed commands in /home/you/go/bin.
*** You need to add /home/you/go/bin to your $PATH. ***
如果中间树莓派卡死的话,需要增大swap空间,然后再编译,参考: https://blog.csdn.net/qq_37968132/article/details/79887137
-
环境变量配置
安装完毕后配置环境变量,修改~/.bashrc,添加
export GOROOT=$HOME/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
然后
$ source ~/.bashrc #刷新
$ go version # 查看go版本
$ go env # 查看go环境`
至此,go!