linux用のgodocのバイナリをOSXでつくる
クロスコンパイルメモ。
以前もクロスコンパイルをやったけど、OSXでlinux用のgodocを作ったときのメモ。 linuxでもwindows上でもできます(windowsはmingwの環境を整える必要がありますが。。)
前提:
- goの環境をソースからコンパイルできる環境があること (参考:Go言語の環境をソースからビルドする #golangjp - memoメモ)
手順
- ターゲットにする環境に合わせて GOOS, GOARCH をexportしておく (参考:http://golang.org/doc/install/source#environment)
- クロスコンパイルできるようにgoの環境を整える
- go get(go install)でターゲットのコードをビルドする
例
$ export GOOS=linux; export GOARCH=386 $ cd ~/go/src $ ./all.bash $ go get code.google.com/p/go.tools/cmd/godoc
とすると、 ~/go/bin/linux_386/
に godoc のバイナリができてる
godocは特殊なので ~/go/bin
以下にできます。ほかの普通のコマンド(例えば、 go get github.com/golang/lint/golint
など)は $GOPATH/bin/linux_386/
に配置されるはずです。