首先我不推薦使用yum安裝, 因為本來也沒有太多麻煩的依賴,yum庫裡的go版本太低, 在fedora23上為1.5
是以直接在下面位址下載下傳了1.8版本
wget https://www.golangtc.com/static/go/1.8.3/go1.8.3.linux-amd64.tar.gz
然後解壓,把go檔案夾放在/go根路徑上
修改/etc/profile 添加path和GOROOT
# GO PATH
export PATH=$PATH:/go/bin:
# GO GOROOT
export GOROOT=/go
此時若使用go version指令可以得到
# go version
go version go1.8.3 linux/amd64
然後添加兩個檔案, 做一個helloworld 編譯并運作它
/gosource/helloworld/src/main/app.go
package main
import (
"fmt"
"speaker"
)
func main() {
fmt.Println(speaker.GetMessage())
}
/gosource/helloworld/src/speaker/say.go
package speaker
func GetMessage() string {
return "hello world"
}
下面需要注意的是, 因為我不想把每個project的依賴路徑都加入到GOPATH中, 是以我使用一個shell腳本來管理GOPATH
/gosource/helloworld/install.sh
#!/bin/bash
if [ ! -f install.sh ]; then
echo 'install must be run within its container folder' 1>&2
exit 1
fi
CURDIR=`pwd`
OLDGOPATH="$GOPATH"
export GOPATH="$CURDIR"
export GOBIN="$CURDIR/bin"
gofmt -w src
go install $1
export GOPATH="$OLDGOPATH"
unset GOBIN
echo 'finished'
這樣隻要每次我在/gosource/helloworld 都可以使用下面的代碼來編譯每個project
[[email protected] helloworld]# ./install.sh ./src/main/app.go
經過上面的步驟會得到一個
/gosource/helloworld/bin/app 的可執行檔案