1. 程式人生 > >飛騰1500A平臺上構建Go語言環境指南

飛騰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
可以愉快的玩耍了!