Ubuntu 12.04.2 x64 安裝go語言

安裝C語言工具 

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

安裝Mercurial 

sudo apt-get install python-setuptools python-dev build-essential
sudo apt-get install mercurial

獲取Go lang代碼 

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

安裝Go

cd go/src
sudo ./all.bash

安裝成功的話會提示: html

# Checking API compatibility.
Go version is "go1.0.3", ignoring -next /home/calvin/go/api/next.txt

ALL TESTS PASSED

---
Installed Go for linux/amd64 in /home/calvin/go
Installed commands in /home/calvin/go/bin
*** You need to add /home/calvin/go/bin to your PATH.

添加ubuntu環境變量

sudo vim ~/.bashrc
輸入一下內容:
export GOROOT=$HOME/go

export GOBIN=$GOROOT/bin

export GOPKG=$GOROOT/pkg/tool/linux_amd64

export GOARCH=amd64

export GOOS=linux

export PATH=.:$PATH:$GOBIN:$GOPKG

注:若是  6g -V 提示 6g:未找到命令 那就是由於go的 tools沒有加入系統環境變量。 python

我按官方的安裝說明來裝,官方沒有加這個變量,在個人ubuntu上提示沒有6g,6l等等命令,所以添加 linux

export GOPKG=$GOROOT/pkg/tool/linux_amd64

到.bashrc中。 golang

6g是針對amd64指令的編譯器,它的輸出文件爲 file.6。其中 ‘6’ 表示文件是 amd64指令的輸出文件。 若是是386和arm 處理器,後綴則爲 ‘8’ 和 ‘5’。 也就是說,若是你用的是386處理器,那麼應該用8g命令編譯, 輸出的文件爲file.8。 shell

測試Go程序

mkdir go-test && cd ./go-test
go version
go version go1.0.3
6g -V
6g version go1.0.3

cat >hello.go <<EOF
package main

import "fmt"

func main() {
        fmt.Printf("hello, world\n")
}
EOF

6g hello.go
6l hello.6
./6.out
hello, world

截屏: ubuntu


另外:若是要升級Go lang vim

升級go


cd ~/go/src
hg pull
hg update release
sudo ./all.bash


go環境變量說明

Go編譯器須要三個必須的環境變量和一個可選的環境變量。環境變量在.bashrc 或其餘配置文件中設置。 api

$GOROOT
Go安裝包的根目錄。一般是放在$HOME/go,固然也能夠是其餘位置。 bash

$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 變量也包含這個路徑,這樣編譯器能夠找到正確的執行文件。
$GOARM (optional, arm, default=6)
須要說明的是$GOARCH和$GOOS環境變量表示的是目標代碼 運行環境,和當前使用的平臺是無關的。這個對於交叉編譯是很方便的。
在.bashrc文件中設置如下環境變量:
export GOROOT=$HOME/go
export GOARCH=amd64
export GOOS=linux
export PATH=.:$PATH:$GOBIN
檢查是否能正常使用:
source ~/.bashrc
cd ~
6g -V


Ubuntu環境變量

在Ubuntu中有以下幾個文件能夠設置環境變量
一、/etc/profile:在登陸時,操做系統定製用戶環境時使用的第一個文件,此文件爲系統的每一個用戶設置環境信息,當用戶第一次登陸時,該文件被執行。
二、/etc/environment:在登陸時操做系統使用的第二個文件,系統在讀取你本身的profile前,設置環境文件的環境變量。
三、~/.bash_profile:在登陸時用到的第三個文件是.profile文件,每一個用戶均可使用該文件輸入專用於本身使用的shell信息,當用戶登陸時,該 文件僅僅執行一次!默認狀況下,他設置一些環境變遊戲量,執行用戶的.bashrc文件。/etc/bashrc:爲每個運行bash shell的用戶執行此文件.當bash shell被打開時,該文件被讀取.
四、~/.bashrc:該文件包含專用於你的bash shell的bash信息,當登陸時以及每次打開新的shell時,該該文件被讀取。

幾個環境變量的優先級  1>2>3

參考連接:

http://golang.org/install.html

相關文章
相關標籤/搜索