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并且编译相应 ...
随机推荐
- 递归实现n(经典的8皇后问题)皇后的问题
问题描述:八皇后问题是一个以国际象棋为背景的问题:如何能够在8×8的国际象棋棋盘上放置八个皇后, 使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行.纵行或斜线上 ...
- ASP.NET Core "完整发布,自带运行时" 到jexus
一.阅读前须知 1.使用 jexus整合asp.net core的优点: 1)支持多站点,同一端口可以同时支持任何多的asp.net core应用程序: 2)应用程序启动.停 ...
- JS中给正则表达式加变量
前不久同事询问我js里面怎么给正则中添加变量的问题,遂写篇博客记录下. 一.字面量 其实当我们定义一个字符串,一个数组,一个对象等等的时候,我们习惯用字面量来定义,例如: var s = &quo ...
- 对一致性Hash算法,Java代码实现的深入研究
一致性Hash算法 关于一致性Hash算法,在我之前的博文中已经有多次提到了,MemCache超详细解读一文中"一致性Hash算法"部分,对于为什么要使用一致性Hash算法.一致性 ...
- Windbg Extension NetExt 使用指南 【2】 ---- NetExt 的基本命令介绍
摘要 : 本章节介绍NetExt常用的命令. 并且对SOS进行一些对比. NetExt的帮助 要想玩好NetExt, 入门就得看帮助. 看NetExt的帮助可以调用!whelp 命令. 这样hi列举出 ...
- ES 学习总结
ES 总结: es 是基于lucene的, 是java 实现的, 很多概念和lucene是相同的 索引-- 对应数据库的表,mongoDB中的集合 文档,由字段组成, 一个字段可以出现多次. 字段,其 ...
- SQL Server中TOP子句可能导致的问题以及解决办法
简介 在SQL Server中,针对复杂查询使用TOP子句可能会出现对性能的影响,这种影响可能是好的影响,也可能是坏的影响,针对不同的情况有不同的可能性. 关系数据库中SQL语句只 ...
- Android浮层点击穿透问题
最近做微信公众号开发的时候遇到一个问题,上线后发现此问题后检查代码没有发现问题,无奈只能回滚到上一个版本. 问题是这样的:页面一个选择的浮层,在浮层点击确定后,下面的页面会自动提交 在测试环境上无法重 ...
- LOCK TABLES和UNLOCK TABLES与Transactions的交互
LOCK TABLES对事务不安全,并且在试图锁定表之前隐式提交任何活动事务. UNLOCK TABLES只有在LOCK TABLES已经获取到表锁时,会隐式提交任何活动事务.对于下面的一组语句,UN ...
- WebStrom与Github连接
刚开始接触GitHub,之前都是用git命令来提交代码,很是麻烦~~~,现在通过WebStrom将项目提交到GitHub网站上(简单容易了很多). 第一:webstrom创建项目然后上传到githu ...