ログってなんぼ

日々のメモです

Go言語をMacに入れてHello,Worldまで

homebrewでインストール

$ brew install go
==> Downloading https://homebrew.bintray.com/bottles/go-1.4.2.yosemite.bottle.1.tar.gz
######################################################################## 100.0%
==> Pouring go-1.4.2.yosemite.bottle.1.tar.gz
==> Caveats
As of go 1.2, a valid GOPATH is required to use the `go get` command:
  https://golang.org/doc/code.html#GOPATH

You may wish to add the GOROOT-based install location to your PATH:
  export PATH=$PATH:/usr/local/opt/go/libexec/bin
==> Summary
/usr/local/Cellar/go/1.4.2: 4566 files, 155M

ターミナルで見ると最終行に出てるビール何だろ・・?

パスを通す

上記メッセージにもあるように、goのディレクトリにぱすをとおしておく必要があるらしい

~/.bash_profile

export PATH=$PATH:/usr/local/opt/go/libexec/bin

追記して読込し直す

$ . ~/.bash_profile 

$ echo $PATH
/Users/okisanjp/.rvm/gems/ruby-head/bin:/Users/okisanjp/.rvm/gems/ruby-head@global/bin:/Users/okisanjp/.rvm/rubies/ruby-head/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/local/lib:/Users/okisanjp/bin:/Users/okisanjp/.rvm/bin:/usr/local/bin:/usr/local/sbin:/usr/local/lib:/Users/okisanjp/bin:/Users/okisanjp/.rvm/bin:/usr/local/opt/go/libexec/bin

OK

サンプル通りに作ってみる

とにかくプログラミング言語は書く事が大事。読んでるだけで分かった気になってもとにかく書く・・・

hello.go

$ cat > hello.go
package main

import "fmt"

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

実行してみる

$ go run hello.go
hello, world

go run [filename]でファイルをコンパイルしてすぐ実行するみたい

typoしてみる

package main

import "fmt"

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

実行

$ go run hello.go
# command-line-arguments
./hello.go:6: undefined: fmt.Printff

エラー出た。ふむふむ

コンパイルしてみる

$ go build hello.go 

$ ls -l hello
-rwxr-xr-x  1 okisanjp  staff  1927696  6  2 21:46 hello

実行権限の付いたファイルが出来た

実行してみる

$ ./hello 
hello, world
とりあえず初Goはここまで