Mac에 Go를 설치 · A Tour of Go를 로컬로 시작할 때까지 걸린 곳
Homebrew에서 Go 설치
$ brew install go
설치된 위치 확인
🍺 /usr/local/Cellar/go/1.15: 9,769 files, 494.3MB
Homebrew라면/usr/local/Cellar/직하에 들어갑니다
버전 확인
$ go version
go version go1.15 darwin/amd64
적절한 디렉터리에 파일 만들기
$ mkdir -p ~/go/src/practice
Hello world 해보기
practice 디렉터리에 hello.go 만들기
참고 Golang 공식:Test your installation
hello.go
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n")
}
build 해보기
hello.go:3:8: cannot find package "fmt" in any of:
/Users/miztakahashi/go/src/fmt (from $GOROOT)
($GOPATH not set. For more details see: 'go help gopath')
package hello: cannot find package "runtime" in any of:
/Users/miztakahashi/go/src/runtime (from $GOROOT)
($GOPATH not set. For more details see: 'go help gopath')
cannot find package 오류 ...
$ PATH가 다니지 않았습니까?
여러가지 조사했습니다.
go env에서 환경 변수 목록을 확인하면 이유를 알 수 있습니다.
Mizukimbp:hello miztakahashi$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/miztakahashi/Library/Caches/go-build"
GOENV="/Users/miztakahashi/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH=""
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/Users/miztakahashi/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/Users/miztakahashi/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
.
.
.
일반적으로 homebrew로 설치하면,
🍺 /usr/local/Cellar/go/1.15: 9,769 files, 494.3MB
/usr/local/Cellar/바로 아래에 들어가는 것처럼,다음 경로를 올바른 위치로 다시 작성해야 할 것 같습니다.
GOPATH=""
GOROOT="/Users/miztakahashi/go"
GOTOOLDIR="/Users/miztakahashi/go/pkg/tool/darwin_amd64"
/usr/local/Cellar/ 바로 아래에 go가 들어가도록 환경 변수를 수정해 갑니다.
$ echo 'export GOPATH=$HOME/go' >> ~/.bash_profile
$ echo 'export PATH=$PATH:$GOPATH/bin' >> ~/.bash_profile
$ echo 'export GOROOT=/usr/local/Cellar/go/1.15/libexec' >> ~/.bash_profile
$ echo 'export GOTOOLDIR=/usr/local/Cellar/go/1.15/libexec/pkg/tool/darwin_amd64' >> ~/.bash_profile
$ source ~/.bash_profile // これをやらないと反映されない
반영되어 있는지 $go env에서 확인
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/miztakahashi/Library/Caches/go-build"
GOENV="/Users/miztakahashi/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/miztakahashi/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/miztakahashi/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/Cellar/go/1.15/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.15/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
GOPATH
GOROOT
GOTOOLDIR의 패스가,
/usr/local/Cellar/직하에 go가 와 있는 형태가 되면 OK!
제대로 패스를 통과했기 때문에 다시 build 해 보자
$ cd ~/go/src/practice
$ go build
문제없이 build 할 수있었습니다. 특히 아무것도 결과는 반환되지 않습니다.
올바르게 빌드되었거나 파일 (바이너리 파일)을 실행하여 테스트 해보십시오.
$ ./hello
hello, world
괜찮을 것 같습니다.
다음은 A Tour of Go를 로컬에서 시작시켜 보자.
A Tour of Go는 로컬에서 시작할 수 있는 것 같아서 해보기로 했습니다.
h tps : // 토우 r. 미안해. 오 rg / ぇ l 코메 / 3
go get golang.org/x/tour
Permission denied로 git clone 할 수없는 문제
# cd .; git clone -- https://go.googlesource.com/tour /Users/miztakahashi/go/src/golang.org/x/tour
fatal: could not create work tree dir '/Users/miztakahashi/go/src/golang.org/x/tour': Permission denied
package golang.org/x/tour: exit status 128
분명히 go get golang.org/x/tour
git clone htps : // 기주 b. 코 m / 굿 g / 토 r 과 같은 것 같습니다. (이쪽도 같은 에러가 돌아왔습니다.)
원래 ssh가 다니고 있는지 확인
Mizukimbp:~ miztakahashi$ ssh -T [email protected]
Hi AnnieMizukiTakahashi! You've successfully authenticated, but GitHub does not provide shell access.
다니는 것 같았습니다.
sudo를 붙이고 실행하면 잘 작동했습니다.
sudo git clone https://github.com/golang/tour
sudo go build
sudo cp tour $GOPATH/bin
tour //これでローカルのブラウザが開きます
Reference
이 문제에 관하여(Mac에 Go를 설치 · A Tour of Go를 로컬로 시작할 때까지 걸린 곳), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Annielovescode/items/43909a5ca4581c55e262텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)