飞腾1500A平台上构建Go语言环境指南

飞腾1500A平台上构建Go语言环境指南
一、初识Go语言
        Go语言是Google公司于2009年正式推出的一款开源的编程语言,是由Robert Griesemer、Ken Thompson和Rob Pike等世界顶尖计算科学家精心打造的系统编程语言。Go语言最显著的特点是编码简洁迅速、支持高效并发和自动内存管理等。此外,Go语言还面向网络服务器、存储系统和数据库等领域的编程进行了优化设计,并且简化了应用系统的安装和部署。因此,Go语言受到了广大程序员的青睐,越来越多地开始应用于谷歌和百度等知名中外企业的产品中。

龙芯前段时间讲过了,下面轮到飞腾了




一、在X86平台上交叉编译出面向ARM64平台的Go语言自举编译工具链

所用工具 64位Linux操作系统的X86电脑

https://golang.org/dl/

下载 go1.8.1.linux-amd64.tar.gz

下载go1.8.1.src.tar.gz
解压压缩

在跟目录下建立两个文件夹
goarm64
gox64

把解压的内容拷贝两个目录

https://storage.googleapis.com/golang/go1.8.1.src.tar.gz 到 goarm64

https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gz 到 gox64
下面我们用gox64目录中的go 去交叉编译 goarm64的go 生成安装环境包
在命令控制台执行
$ export GOROOT_BOOTSTRAP=/gox64
切换到goarm64的src

$ cd /goarm64/src
执行
$ GOOS=linux GOARCH=arm64 ./bootstrap.bash
执行完成根目录会生成
go-linux-arm64-bootstrap.tbz


二、在飞腾1500A平台上从源代码构建Go 1.8开发环境。
把go1.8.1.src.tar.gz和go-linux-arm64-bootstrap.tbz 拷贝到 arm64 平台的机器上
下面要用 go-linux-arm64-bootstrap.tbz 去编译go1.8.1.src.tar.gz
分别解压两个压缩包
假定:
go1.8.1.src.tar.gz解压到根目录的go1.8.1
go-linux-arm64-bootstrap.tbz 解压到根目录的 goarm64
验证
go-linux-arm64e-bootstrap.tbz里面的go可以运行

$ cd /goarm64/bin
$ export GOROOT=/goarm64
$ ./go version
如果观察到以下输出,则基本可以说明交叉编译没有问题。
go version go1.8.1 linux/arm64

cd  /go1.8.1
在当前目录创建名为env.sh的shell脚本,输入以下语句后保存退出。
#!/bin/bash
export GOROOT_BOOTSTRAP=/goarm64
export GOROOT=/go1.8.1
# Added for Loongson
export GO_TEST_TIMEOUT_SCALE=2
然后开始安装
$ source env.sh
$ cd src
$ ./all.bash

等吧。测试成功 ok!
最后
在~/.bashrc的末尾添加如下语句
export GOROOT=/go1.8.1
export PATH=$PATH: $GOROOT/bin
然后执行
$ source ~/.bashrc
可以愉快的玩耍了!

猜你喜欢

转载自blog.csdn.net/debugs_i_n_a/article/details/77161293
今日推荐