ARM5環境向けプログラムにGolangを使ってみた
1. Goをインストール
`--with-cc-all`をつけると全てのコンパイラが入るらしい。
$ brew install go --with-cc-all
2. 環境変数を設定する
.zshrcとかに入れとく。
export GOROOT=/usr/local/opt/go/libexec export GOPATH="$HOME/go" export PATH="$GOROOT/bin:$GOPATH/bin:$PATH"
3. コンパイラを設定する
Goの不具合かもしれないが、ARM5を指定しているのに、なぜか、ARM6でコンパイルされてしまうので。
$ cd $GOPATH/src $ GOOS=linux GOARCH=arm GOARM=5 make.bash
4. コーディング
$ touch hello.go $ vi hello.go
とりあえず、hello, worldしましょうか。
package main import "fmt" func main() { fmt.Println("Hello, world") }
JetBrainは、goのpluginあるけど、デバッガが動かなかった。
5. 実行する
$ go run hello.go
6. 実行形式を生成する
GOOS、GOARCH、GOARMは、今回、実行環境であるARM5を指定します。
GOBINは、生成された実行形式が出力される場所です。
$ GOOS=linux GOARCH=arm GOARM=5 GOBIN=./ go install