2014年9月6日 星期六

Golang打包

以下內容請先安裝完GoLang後再閱讀

下為GoLang官方提供的workspace樣式
GOPATH=/home/user/gocode

/home/user/gocode/
    src/
        foo/
            bar/               (go code in package bar)
                x.go
            quux/              (go code in package main)
                y.go
    bin/
        quux                   (installed command)
    pkg/
        linux_amd64/
            foo/
                bar.a          (installed package object)
你可以用如下的shell script得到相關資料
$ go help gopath

GoLang作法是先把資料夾設定好,依序把各個package install,再install 你的main package
因為我不太會寫Makefile,所以我用shell來寫,整個install大概就是下面這樣:

#/bin/bash
mainSourceDir="quux"
sourceDir="boo/bar"

GOPATH="/home/user/gocode/"
export GOPATH=$GOPATH
export PATH=$PATH:$GOPATH/bin


cd $GOPATH/$sourceDir
for i in `ls`
do
if [ $i != $mainSourceDir ] ; then
echo "build $GOPATH/$sourceDir/$i"
cd $i
go install
cd ".."
fi
done
cd $mainSourceDir
go install
上面是沒有用到其他library的情況,有用到也是一樣要build那些library。

詳情都可看GoLang的官方資料:http://golang.org/doc/code.html

沒有留言:

張貼留言