centos5.6部署golang环境遇到的问题

Linux就该这么学

1.前几天在centos5.6下部署golang环境。在执行./all.bash脚本的时候碰到问题。当时我也没怎么在意。就忽略了,继续后面的操作。做完了所有的操作,蛋疼的发现,这些都是无用功。环境还是没装上。

 2.当时找不出原因。就搁置了几天。今天重新部署下。顺便找了下那天报错的那个原因。才发现,原来是那个报错信息导致了后面的操作都是无效的。

 3.报错信息是:

./make.bash: line 141: 29239 Segmentation fault “$GOTOOLDIR”/go_bootstrap clean -i std

 

4.找了很久的资料。爬了不少站。官网的资料都是英文的,蛋疼的一个也看不懂。无一种在某论坛上看到一样的报错信息。

 5.原来是centos5.6的内核版本太低所致。升级下内核就好。得益于前一篇文档顺利解决内核升级不能启动的原因。golang环境成功部署。

 6.升级完内核后按照下面步骤成功部署完golang环境 

安装Mercurial

 

在进行后面的操作之前需要安装Mercurial版本管理系统(可以输出hg名词检测是否安装)。输入以下命令安装:

$ yum install mercurial

获取代码

 

以下命令会创建一个go目录。切换到相应目录,并且确保当前位置不存在go目录,运行命令:

$ hg clone -r release https://go.googlecode.com/hg/ go

安装Go

 

编译go环境:

$ cd go /src
$ ./all.bash 编译完成后,结尾会打印以下信息。 Installed Go for linux/amd64 in /home/you/go. Installed commands in /home/you/go/bin. *** You need to add /home/you/go/bin to your $PATH. ***

设置$PATH
$ cd /etc/profile.d/
$ vi go.sh

export GOROOT=/home/you/go
export GOBIN=$GOROOT/bin export GOARCH=amd64 export GOOS=linux export PATH=.:$PATH:$GOBIN $ . ./go.sh 编写程序

以hello.go代码为例,用以下命令编译:

 

package main
import "fmt"
func main(){
fmt.Printf("hello world\n")
}

$ go build hello.go

运行程序: $ ./hello

关于 如何管理编译go项目需参阅https://golang.org/doc/code.html

本文由 CentOS中文站 - 专注Linux技术 作者:centos 发表,其版权均为 CentOS中文站 - 专注Linux技术 所有,文章内容系作者个人观点,不代表 CentOS中文站 - 专注Linux技术 对观点赞同或支持。如需转载,请注明文章来源。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注