2015年8月,Go 1.5 正式发布,这是 Go 的第六个重要版本。
此版本包括大量重大改进,编译工具链从 C 转换到 Go,从 Go 代码库中完全移除 C 代码。完完全全重新设计了垃圾收集器,减少垃圾收集器的停顿时间。改进 scheduler,允许修改默认 GOMAXPROCS 值(并发执行 goroutines 数量),可以从 1 修改到逻辑 CPUs 的数量。改进 linker,允许分布式 Go 包作为分享库链接到 Go 程序,可以构建 Go 包到归档或者分享库,可以链接或者通过 C 程序加载(design doc)
下载
兴趣所致,提现一下其源代码构建的步骤,代码文档在 go-go1.5/doc/install-source.html 【https://github.com/golang/go下载】
早期的一个参考,有些繁琐的步骤 http://studygolang.com/articles/3188 如何从源代码构建 Go 1.5 开发环境
概念:2个工具链
gc: Go compiler and tools. 这个是go编译器
gccgo:a more traditional compiler using the GCC back end,这个是基于gcc的编译器
http://golangtc.com/download 国内的镜像,golang被墙了
构建
可以在golangtc.com下载1.4的编译二进制版本并配置好;然后执行执行src/all.bash,出现如下,即构建完成
ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/###/go/go-go1.5
Installed commands in /home/###/go/go-go1.5/bin
*** You need to add /home/###/go/go-go1.5/bin to your PATH.
设置
如上构建完成后,根据自己的路径设置好环境变量即可使用
export GOROOT=/home/###/go/go-go1.5
export PATH=$GOROOT/bin:$PATH
export GOPATH=/home/###/go/demo/myapp
GOROOT/bin放在前面,可以防止系统安装的go版本被使用
GOPATH可以设置多个路径
具体这些路径的设置可参考http://www.cnblogs.com/ghj1976/archive/2013/02/16/2913350.html,GO语言这个地方和其他语言的区别较大,很多地方必须按照约定的规则执行
IDE环境
http://golangtc.com/download/liteide
下载安装后执行./liteide ,在centos7上出现如下问题
./liteide: error while loading shared libraries: libpng12.so.0: cannot open shared object file: No such file or directory
即使/lib64/libpng15.so 软链接仍然显示 libpng12.so.0: version `PNG12_0' not found
从http://libpng.sourceforge.net/ libpng12 版本,下载安装编译,把.so文件拷贝到###/go/liteide-qt/lib/liteide下执行即可
如上配置完成后体验一下这个在oschina说是较快的go语言的全文检索
https://github.com/huichen/wukong