GO 1.5 代码编译安装 [centos7 64位]
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
GO 1.5 代码编译安装 [centos7 64位]的更多相关文章
- 在VirtualBox 虚拟机中安装CentOS7 64位实验基础系统
1.将CentOS-7-x86_64-Minimal ISO加载入虚拟机,选择安装CentOS 7 2.启动欢迎画面,保持默认,选择 继续 3.安装参数设置 3-1.设置时区以便同步时间,将时区更改为 ...
- CentOS7 64位 安装MySQL5.7
安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...
- 超详细的CentOS7 64位下MySQL5.7安装与配置(YUM)【转发+新创】
安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...
- CentOS7 64位下MySQL5.7安装与配置(YUM)转
安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...
- CentOS7 64位下MySQL5.7安装与配置
安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...
- 002-docker安装-mac上安装docker,17.06在CentOS7 64位机器上安装
一.mac上安装docker 1.下载 通过这个链接下载:https://download.docker.com/mac/stable/Docker.dmg 2.安装 将 Moby 的鲸鱼图标拖拽到 ...
- 安装MySQL5.7 安装环境:CentOS7 64位 MINI版,
安装环境:CentOS7 64位 MINI版,安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...
- CentOS7 64位下MySQL安装与配置(YUM)
安装环境:腾讯云CentOS7 64位安装MySQL5.7 1.配置YUM源 在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum ...
- cmake编译win下64位obs
obs是一款开源编码推流工具,简单易用,非常流行.一次项目中,发现本台式机I3处理器下32位obs推流CPU使用率100%.而使用的第三方设备在64位下,性能较好.所以需要编译64位obs并且编译相应 ...
随机推荐
- linux启动SSH及开机自动启动
本文地址 分享提纲: 1.查看是否启动 2. 设置自动启动 1.[查看是否启动] 启动SSH服务 “/etc/init.d/sshd start”.然后用netstat -antulp | grep ...
- Ubuntu1604下安装Liggghts及CFDEM Coupling
部分内容参考http://www.linuxdiyf.com/linux/16315.html LIGGGHTS是一款开源的DEM软件,来自于著名的分子动力学软件LAMMPS,目前借助于CFDEM C ...
- slf4j
Simple Logging Facade for Java (SLF4J) slf4j可以看成是对各个日志框架的一种抽象,它提供了一套通用的日志使用接口. 下面是slf4j的几个版本比较: 1.6. ...
- json
#json序列化,只能处理简单的数据类型,如:字典.列表.字符串,类和函数等数据类型过于复杂,不支持序列化import jsondef sayhi(name): print('hello,', nam ...
- 【Java并发编程实战】----- AQS(三):阻塞、唤醒:LockSupport
在上篇博客([Java并发编程实战]----- AQS(二):获取锁.释放锁)中提到,当一个线程加入到CLH队列中时,如果不是头节点是需要判断该节点是否需要挂起:在释放锁后,需要唤醒该线程的继任节点 ...
- appserv 安装php的memcache扩展。
http://www.cnblogs.com/yiluxiuxing/p/4267709.html 1. 新建一个phpinfo,查看版本号 2. http://museum.php.net/php5 ...
- Android View.setId(int id) 用法
Android View.setId(int id) 用法 当要在代码中动态的添加View并且为其设置id时,如果直接用一个int值时,Studio会警告. 经过查询,动态设置id的方法有两种; 1. ...
- python property理解
一般情况下我这样使用property: @property def foo(self): return self._foo # 下面的两个decrator由@property创建 @foo.sette ...
- GitHub实战系列~2.把本地项目提交到github中 2015-12-10
GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html ———————————————————————————————————————— ...
- 字符串转化为Json格式的数据--(记录四)
var pName = $(".productName").html(); var pPrice = $(".productPrice").html(); // ...