下载完成后 , 可以看到目录下多了一个go目录 , 里面即为golang的源代码,在终端上执行cd go命令进入该目录 。
执行下面命令检出go1.4.1版本的源代码 , 因为现在已经有新的代码提交上去了,最新的代码可能不是最稳定的:
git checkout go1.4.1
至此,最新1.4.1发行版的源代码获取完毕
3、设置golang的编译环境变量
主要有GOROOT、GOOS、GOARCH、GOARM四个环境变量需要设置,先解释四个环境变量的意义 。
3.1 GOROOT
主要代表golang树结构目录的路径,也就是上面git检出的go目录 。一般可以不用设置这个环境变量,因为编译的时候默认会以go目录下src子目录中的all.bash脚本运行时的父目录作为GOROOT的值 。为了保险起见,可以直接设置为go目录的路径 。
3.2 GOOS和GOARCH
分别代表编译的目标系统和平台,可选值如下:
GOOSGOARCH
darwin386
darwinamd64
dragonfly386
dragonflyamd64
freebsd386
freebsdamd64
freebsdarm
linux386
linuxamd64
linuxarm
netbsd386
netbsdamd64
netbsdarm
【树莓派用来做go语言开发 树莓派 go语言】openbsd386
openbsdamd64
plan9386
plan9amd64
solarisamd64
windows386
windowsamd64
需要注意的是这两个值代表的是目标系统和平台,而不是编译源代码的系统和平台 。树莓派的RaspBian是linux系统,所以这些GOOS设置为linux,GOARCH设置为arm 。
3.3 GOARM
表示使用的浮点运算协处理器版本号,只对arm平台有用,可选值有5 , 6,7 。如果是在目标平台上编译源代码 , 这个值可以不设置,它会自动判断需要使用哪一个版本 。
总结下来 , 在树莓派上设置golang的编译环境变量,可编辑$HOME/.bashrc文件,在末尾添加下面内容:
export GOROOT=你的go目录路径
export GOOS=linux
export GOARCH=arm
编辑完后保存 , 执行source ~/.bashrc命令让修改生效 。
4、编译源代码
环境变量配置完成自后就可以开始编译源代码 。在go目录下的src子目录中 , 主要有all.bash和make.bash两个脚本(另外还有两个all.bat和make.bat脚本适用于window平台) 。编译实际上就是执行其中一个脚本,两者的区别在于all.bash在编译完成后还会执行一些测试套件 。如果希望只编译不测试,可以运行make.bash脚本 。使用cd命令进入go下src目录,执行./all.bash或者./make.bash命令即可开始编译 。由于硬件情况不同,编译耗费的时间不同 。在我的B型树莓派编译过程花费了将近半个小时,编译完成后执行的测试套件又花费了差不多一个小时,总共花费了一个半小时左右 。
5、配置golang运行环境变量
编译完成后 , go目录下会生成bin目录,里面就是go的运行脚本 。为了以后使用方法,可以将这个bin路径添加到PATH环境变量中 。同样编辑~/.bashrc文件 , 因为前面设置过GOROOT环境变量指向go目录了,所以只需要在末尾加上
export PATH=$PATH:$GOROOT/bin
保存后同样执行source ~/.bashrc命令让环境变量生效 。
至此,golang源代码编译安装成功 。执行go version应该就能看到当前golang的版本信息,表示编译安装成功 。
【原创】树莓派3B开发Go语言(四)-自写库实现pwm输出 在前一小节中介绍树莓派用来做go语言开发了点亮第一个LED灯树莓派用来做go语言开发,这里我们准备进阶尝试下,输出第一段PWM波形 。(PWM也就是脉宽调制,一种可调占空比的技术,得到的效果就是:如果用示波器测量引脚会发现有方波输出,而且高电平、低电平的时间是可调的 。)
推荐阅读
- redis读写分离配置,rediscluster读写分离
- 装完系统怎么清空硬盘,装完系统怎么清空硬盘文件
- js循环添加属性,js循环给对象赋值
- 质量最好的电视机是什么,目前质量最好的电视机是哪一款
- c语言实现匿名函数 c++匿名对象语法
- go语言接力,go语言练手项目
- 养成类游戏制作机构推荐,养成类游戏公司
- c语言函数引用声明 c语言 引用函数
- python怎么保存mat文件格式,python如何保存mat文件