Mac에서 GVM으로 Golang 버전 관리하기
개요
이 문서는 Mac에서 gvm(go version manager)
를 통해 golang
을 설치하는 방법을 다룬다. 나의 개발 환경은 다음과 같다.
- desktop: macbook pro 13 2020
- cpu: Intel Core i7 4core
- memory: 32GB
Golang 설치
역설적으로 gvm
을 실행하기 위해서는 golang
이 필요하다. 터미널에 다음을 입력한다.
$ brew install go
Running `brew update --preinstall`...
==> Auto-updated Homebrew!
...
==> Pouring go--1.17.5.big_sur.bottle.tar.gz
🍺 /usr/local/Cellar/go/1.17.5: 10,825 files, 565.8MB
==> Running `brew cleanup go`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
만약 Homebrew
가 설치되지 않았다면 다음을 참고하라.
주니어 엔지니어의 개발 환경 구축하기 (1) 기본 소프트웨어
개요 이 문서는 필자의 맥북에 개발 환경, 특히 개발 시 필요한 소프트웨어 혹은 기본 소프트웨어를 대체하여 유틸리티를 높이는 소프트웨어들을 설치하는 방법에 대해 다룬다. 이 문서에서 다
gurumee92.tistory.com
GVM 설치
먼저 여러 golang
버전을 쉽게 관리하기 위해서 gvm
을 설치한다. 터미널에 다음을 입력한다.
$ bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
그 후 터미널을 다시 키거나 다음 명령어를 입력한다.
$ source ~/.gvm/scripts/gvm
그 후 터미널에 다음을 입력해서 제대로 설치되었는지 확인해보자.
$ gvm version
Go Version Manager v1.0.22 installed at /Users/gurumee92/.gvm
GVM을 통한 Golang 버전 관리
먼저 gvm
을 통해서 설치된 golang
들을 확인해보자.
$ gvm list
gvm gos (installed)
system
정상적으로 동작하기 위해서는 시스템에 설치된 golang
을 gvm
이 참조해야 한다. 다음 명령어를 입력한다.
$ gvm use system --default
Now using version system
이제 다시 gvm list
를 입력해본다.
$ gvm list [17:11:45]
gvm gos (installed)
=> system
이제 설치 가능한 golang
버전을 확인해보자.
$ gvm listall
gvm gos (available)
go1
go1.0.1
go1.0.2
go1.0.3
...
go1.17.4
go1.17.5
go1.18beta1
release.r56
release.r57
release.r58
release.r59
release.r60
release.r57.1
release.r57.2
release.r58.1
release.r58.2
release.r60.1
release.r60.2
release.r60.3
이제 다른 버전인 v1.16
버전을 설치해보자.
$ gvm install go1.16
Installing go1.16...
* Compiling...
go1.16 successfully installed!
다시 한 번 gvm list
를 실행해보자.
$ gvm list
gvm gos (installed)
go1.16
=> system
현재 golang
버전을 확인해보면 작성일 기준 v1.17.5
가 출력된다.
$ go version
go version go1.17.5 darwin/amd64
이제 gvm
을 통해 설치되었던 v1.16
버전으로 바꿔보자.
$ gvm use 1.16
Now using version go1.16
다시 한 번 go version
명령어를 통해서 버전을 확인해보면 설치했던 v1.16
이 출력되는 것을 확인할 수 있다.
$ go version
go version go1.16 darwin/amd64
만약 gvm
의 다른 명령어를 사용하고 싶다면 gvm help
를 입력해보면 어떤 것들이 있는지 확인할 수 있다.
$ gvm help
Usage: gvm [command]
Description:
GVM is the Go Version Manager
Commands:
version - print the gvm version number
get - gets the latest code (for debugging)
use - select a go version to use (--default to set permanently)
diff - view changes to Go root
help - display this usage text
implode - completely remove gvm
install - install go versions
uninstall - uninstall go versions
cross - install go cross compilers
linkthis - link this directory into GOPATH
list - list installed go versions
listall - list available versions
alias - manage go version aliases
pkgset - manage go packages sets
pkgenv - edit the environment for a package set