google go 安裝經曆

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

 參考 http://golang.org/doc/install.html

參考google官方文檔,並結合自己的經曆,算是一半翻譯,一般原創把,其中有許多不懂的地方,請高手指點

 

1,    設定環境變數
$GOROOT    :go的根目錄,一般設為$HOME/go,也可設為其他目錄
$GOOS          :目標作業系統目前他的選項有linux, darwin (註:Mac OS X 10.5 or 10.6)和nacl (註:Native Client, an incomplete port)
$GOARCH    :目標編譯架構,他的選項有amd64 (64位 x86或amd64),386 (32位 x86或amd32), 和 arm (32位 ARM平台)
$GOBIN(可選的):二進位代碼存放的地方,如果你指定了了$GOBIN,那就必須保證他在$PATH下,預設的,$GOBIN的值是$HOME/bin
註:$GOOS和$GOARCH是代碼啟動並執行目標環境,而不是你現在啟動並執行環境。
可以在.bashrc這個檔案中設定這些變數,
例如:
export GOROOT=$HOME/go
export GOARCH=amd64
export GOOS=linux
個人經曆:可以通過echo $GOROOT等來查看環境變數,我在.bashrc中添加上面的內容以後,echo出來的結果仍然是空的,不知道是怎麼回事,請高手指點,自己手動命令列將這三個環境變數添加上,並加上
export $GOBIN=$GOROOT/bin
export $PATH=$PATH:$GOBIN
來把$GOBIN設定好


2,    下載
如果沒有 hg 命令
$ sudo easy_install mercurial
個人經曆:我用的是fedora 11,所以用  yum install mercurial
hg 命令似乎是用於遠程登入下載用的
$ hg clone -r release https://go.googlecode.com/hg/ $GOROOT
下載檔案到$GOROOT目錄下
然後,
sudo apt-get install bison gcc libc6-dev ed make
這是ubuntu的命令,因為go 是給予gcc的,所以要裝c的庫
個人經曆:
fedora下,yum install bison gcc libc6-dev ed make
但沒有找到有關libc6-dev的包;


 3,    安裝
cd $GOROOT/src
./all.bash
如果all.bash運行成功,就會輸出
--- cd ../test
N known bugs; 0 unexpected bugs(N是一個數)
個人經曆:安裝到最後兩項需要連網驗證,卻總是失敗,不過沒有影響功能


4,    測試
寫一個程式hello.go
package main

import "fmt"

func main() {
    fmt.Printf("hello, world/n")
}
如果你的$GOARCH變數是amd64,你使用的命令有 6g,6l,6c,6a
如果是386,那麼有8g,8l,8c,8a
如果是arm,那麼有5g,5l,5c,5a
個人經曆:我使用的386
 編譯:
8g hello.go
串連:
8l hello.8
運行:
./8.out
helloworld

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.