在ubuntu上搭建go編程環境(附帶自動化部署指令碼)

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

自2009年Go語言發布以來,我一直在關注Go語言,如今Go語言已經發展到1.2版本,而且也收到越來越多的人關注這門語言。Go語言設計的目的就是為瞭解決執行數度快但是編譯數度並不理想(如C++)以及編譯速度快但執行效率不佳(.NET、Java),或者開發難度低但執行速度一般的動態語言這一問題。所以說,Go語言的特點是:快速編譯,高效執行,易於開發。

好了,跳過那些框框條條的craps, 讓我們直接先從Go語言的環境搭建開始,由於最近偏愛Ubuntu,在加上作為一門開源語言,在Linux上從原始碼開始搭建環境更讓人覺得有趣味性。

當然,如果你需要快速的搭建環境,也可以直接參考官方文檔:http://golang.org/doc/install.html。考慮到官方文檔已經十分詳細,這裡我就不再一一闡述了。

1. 設定Go環境變數

開啟終端,輸入命令:

export GOROOT=$HOME/goexport PATH=$GOROOT/bin:$PATH

當然,你需要設定項目的目錄

export GOPATH=$HOME/Applications/Go

2. 安裝C工具

由於Go的工具鏈是用C語言編寫的, 因此在安裝Go之前序言安裝相關的C工具。執行一下命令:

sudo apt-get install bison ed gawk gcc libc6-dev make

3. 安裝Mercurial

由於Go的源碼是通過Mercurial進行管理的, 所以需要先安裝Mercurial來實現Go源碼的擷取,一次執行一下命令:

sudo apt-get install python-setuptoolssudo apt-get install pythone-devsudo apt-get install build-essentialsudo apt-get install mercurial

4. 擷取Go原始碼

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

5. 構建Go

在終端中執行一下命令來構建Go

cd $GOROOT/src

./all.bash

編譯完成後會自動化的測試,但是在測試net/http時會連結google.com, 在國內環境稍微有一點不穩定(第一次編譯成功掛掉了...),所以建議是增加一條環境變數

export DISABLE_NET_TESTS=1 

來跳過net的測試.

總結:以上步驟可以通過運行以下指令碼來執行:

#!/bin/bash            #set envif [ "`grep "export GOROOT=/usr/local/go" /etc/profile`" = "" ]; then    echo "export GOROOT=/usr/local/go" >> /etc/profilefi if [ "`grep "export PATH=$GOROOT/BIN:$PATH" /etc/profile`" = "" ]; then    echo "export PATH=$GOROOT/bin:$PATH" >> /etc/profilefi#install csudo apt-get install -y bison ed gawk gcc libc6-dev make #install mercuialsudo apt-get install -y python-setuptools python-dev build-essential mercuial #get code of gohg clone  -r release https://go.googlecode.com/hg/ $GOROOT #compile gocd $GOROOT/src./all.bashexit 0

6. 測試安裝

完成安裝後,建立一個文檔來測試環境是否搭建成功:

Example helloWorld.go

 1 package main 2  3 import ( 4     "fmt" 5     "runtime" 6 ) 7  8 func main() { 9     fmt.Println("Hellow World!", runtime.Version())10 }

執行go run helloWorld.go, 應該會列印出:

Hellow World! go1.2
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.