GO 1.5 程式碼編譯安裝 [centos7 64位]

2012發表於2015-09-08

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

 

相關文章