第二章 Go 編程環境
Go 是一個開源項目,採用 BSD授權協議 。目前有兩種方式使用 Go 語言。這裏主要講述如何使用 Go 專用的 gc 系列工具( 6g 、 8g 等)。另一個可選的編譯器是是基於 gcc 後端的 gccgo 編譯器。關於 gccgo 的細節清參考 安裝並使用 gccgo編譯器 。 Go 現在還沒有 IDE 開發工具,編寫代碼只能用記事本、 Vi 、 Emacs 等文本編輯器。
2.1 Go 的安裝
2.1.1 Go 運行平臺
Go 目前支持兩種操作系統三種類型 CPU 指令集。其中 Linux 和 Mac 平臺可以通用,但是 ARM 目標代碼還不能運行在 OS X 系統上。
下面是針對不同CPU 指令集,編譯後目標代碼的差異:
amd64 (a.k.a. x86-64 ); 6g ,6l,6c,6a
目前最成熟的實現。編譯器進行了很好的優化,可以產生更優的目標代碼(儘管有時候gccgo 可能做的更好)。
386 (a.k.a. x86 or x86-32); 8g,8l,8c,8a
雖然沒有amd64 平臺那麼成熟,但是已經非常穩定了。
arm (a.k.a. ARM ); 5g ,5l,5c,5a
還有一些問題,還在完善中。重要針對QEMU 和android 手機環境測試。
所有的平臺,出了關於操作系統藉口部分有一些差異外,Go 的運行庫支持都是一樣的。包含基於 mark-and-sweep 算法()的垃圾內存回收支持,高效的數組、字符串以及切片,還有獨立的堆棧支持和goroutine 的實現等。
當前已有愛好者將其移植到Windows 平臺下,如果想在Window 平臺下運行Go, 可以從http://code.google.com/p/gomingw/ 網站下載到二進制發佈版本。
2.1.2 下載 Go
Go 使用Mercurial 版本管理系統,管理代碼的。如果你沒有Mercurial ,可以從Mercurial 官網(http://mercurial.selenic.com/) 下載。
Linux 平臺下用以下命令安裝:
$ sudo easy_install mercurial
Window 平臺下可以用 Tortoisehg 。
確保GOROOT 不存在或者是空目錄。然後從倉庫檢出代碼:
$ hg clone -r release https://go.googlecode.com/hg/ GOROOT
2.1.3 設置環境變量
Go 編譯器需要三個必須的環境變量和一個可選的環境變量。環境變量在.bashrc 或其他配置文件中設置。
$GOROOT
Go 安裝包的根目錄。通常是放在$HOME/go ,當然也可以是其他位置。
$GOOS and 和 $GOARCH
這兩個環境變量表示目標代碼的操作系統和CPU 類型。$GOOS 選項有linux 、 freebsd 、darwin (Mac OS X 10.5 or 10.6) 和 nacl (Chrome 的Native Client 接口,還未完成) 。$GOARCH 的 選項有amd64 (64-bit x86 ,目前最成熟) 、386 (32-bit x86) 、 和arm (32-bit ARM ,還未完成) 。下面是$GOOS 和 $GOARCH 的可能組合:
$GOOS
$GOARCH
darwin
386
darwin
amd64
freebsd
386
freebsd
amd64
linux
386
linux
amd64
linux
arm
nacl
386
$GOBIN (optional) (可選)
指明用於存放go 的二進制程序目錄。如果是沒設置$GOBIN 環境變量, 則默認是安裝在$HOME/bin 。如果設置了該變量,需要確保$PATH 變量也包含這個路徑,這樣編譯器可以找到正確的執行文件。
需要說明的是$GOARCH 和$GOOS 環境變量表示的是目標代碼運行環境,和當前使用的平臺是無關的。這個對於交叉編譯是很方便的。
在.bashrc 文件中設置以下環境變量:
export GOROOT=$HOME/go
export GOARCH=amd64
export GOOS=linux
用以下命令再檢測一次環境變量。
$ env | grep '^GO'
Window 平臺下環境變量設置
GOROOT=C:/go
GOARCH=386
GOOS=windows
GOBIN=%GOROOT%/bin
PATH=%PATH%;%GOBIN%/;
注: Gomingw 2010-05-04 前的版本GOOS 變量應設置爲mingw
2.1.4 安裝
Go 的工具鏈採用C 語言編寫。因此要編譯Go 工具,需要現安裝GCC 、C 標準庫、Bison 分析器、以及make 、awk 和ed 等開發工具。對於OS X 系統,它們可以作爲Xcode 的插件。對於Linux 系統,可以用以下命令安裝:
$ sudo apt-get install bison gcc libc6-dev ed gawk make
(如果是其他Linux 版本,可以用類似命令安裝)。
運行以下命令,構建Go :
$ cd $GOROOT/src
$ ./all.bash
編譯完成後,結尾會打印以下信息。
--- cd ../test
N known bugs; 0 unexpected bugs
Windows 平臺下,可以從Gomingw 網站(http://code.google.com/p/gomingw/ ) 下載二進制,解壓到指定目錄,並設定好環境變量,即可運行。
本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/savechina/archive/2010/05/20/5612399.aspx