树莓派4B踩坑指南 - (8)安装GO语言
下载
191129最新版本为go1.13.4.linux-armv6l.tar.gz
go官网(点此访问)国内访问似乎不是很稳定,但下载速度还挺快,下载地址:(点此访问)
安装
解压后是一个名为go
的文件夹,详情可以查看安装帮助页(英文) go/doc/install.html
主要安装步骤:
tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz
# 实际安装的时候,将go$VERSION.$OS-$ARCH.tar.gz替换成实际文件名
# 如go1.13.4.linux-armv6l.tar.gz
sudo nano /etc/profile
# 编辑环境变量
export PATH=$PATH:/usr/local/go/bin
# 在最后一行加上这句话,其他的不要改,保存(ctrl+o)退出(ctrl+x)
su
# 进入root权限账户,否则会提示`sudo: source:找不到命令`
source /etc/profile
# 刷新环境变量配置
测试
找个地方新建个名为hello
的文件夹,里边新建一个hello.go
的文件,文件内容:
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}
在此文件夹打开命令行:
go build
# 启动编译,会看到文件夹内出现了一个名为hello的文件
./hello
# 执行编译好的hello,输出:hello, world
调试完毕!
卸载
- 删除
/usr/local/go
文件夹 - 删除
/etc/profile
中的环境变量export PATH=$PATH:/usr/local/go/bin
问题
- 在实际运行时,发现用pi账户和root账户都可以直接使用,但是如果用
sudo go
会提示go:找不到命令
,这个问题是由于sudo命令会重置环境变量而引起的。 sudo
使用配置文件/etc/sudoers
,那么将go的安装目录/usr/local/go/bin
添加到安全路径Defaults secure_path
里就好了。如下:
sudo nano /etc/sudoers
# 打开并编辑 sudoers
Defaults secure_path="/usr/local/go/bin:/usr/local/sbin:/usr/local/bin:/$(后边不管他)
# 找到Defaults secure_path,并在双引号中添加 /usr/local/go/bin,以:分隔,然后保存(ctrl+o)退出(ctrl+x)