Go가 처음 나왔을 때부터 이목을 끌던 귀여운 캐릭터 친구.... 멍청해보여서 더 귀엽당ㅋㅋ
GVM: Go Version Manager
GVM은 NVM 처럼 언어의 버전을 관리하는 매니저다. 당연히 공식지원이 아니라 오픈소스이다.
공식 Github: https://github.com/moovweb/gvm
GitHub - moovweb/gvm: Go Version Manager
Go Version Manager. Contribute to moovweb/gvm development by creating an account on GitHub.
github.com
다음의 명령어를 통해 gvm을 설치할 수 있다. 그러나! gvm을 설치하려면 go가 설치돼있어야 한다. ㅋㅋㅋㅋㅋㅋㅋ 엄청난 역설...
golang 설치때문에 엄청난 노고를 들여본 입장에서 감히 말해보자면, gopath 설정은 cosmos-sdk에서 알려준 게 최고다. 그래서 여기서도 이걸 기준으로 설명하겠다.
Golang 설치 (Go 설치)
다음은 운영체제별 Golang 설치 방법이다.
- Linux(Ubuntu)
sudo apt-get update
sudo apt-get install -y make gcc
wget https://go.dev/dl/go1.18.5.linux-amd64.tar.gz
sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.18.5.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
- macOS / Window는 공식 홈페이지에서 다운받아 설치하자
공식 홈페이지: https://go.dev/dl/
All releases - The Go Programming Language
go.dev
GOPATH 설정
Golang은 GOPATH를 설정해줘야 한다. 특히 unix 계열에서는 필수다. 그렇지 않으면 바이너리 파일 실행때문에 매번 노가다를 해야할 수도 있다.
- macOS / Linux(Ubuntu) / Unix
다음의 명령어를 ~/.bash_profile 에 추가한다. 파일이 없다면 하나 만들어주자.
export GOPATH=/usr/local/go/bin
- Windows
1. 윈도우는 환경설정 PATH 추가를 해줘야한다. 먼저 윈도우키를 누르고 "환경 변수"를 검색한다.
2. 그러면 고급 시스템 설정 > 환경 변수로 진입하게 되는데, 시스템 변수 편집을 클릭한다.
3. GOPATH를 찾아보고 없으면 추가한다.
4. 다음의 링크를 참조해서 상세히 설정하자
Go언어 - Golang 설치, Golang 환경 변수 설정, Hello World 출력
Go언어 - Golang 설치, Golang 환경 변수 설정, Hello World 출력 구글에 들어가셔서 golang 검색 후 상단 부분에 있는 https://go.dev 눌러 들어가 주세요 https://go.dev/ The Go Programming Language DevOps & Site Reliability Wi
jwtspro.com
이제 다시 본론으로 돌아와서, GVM을 설치하고 사용해보자. 명령어를 사용하므로 당연히 터미널에서 진행한다.
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
// output
Cloning from https://github.com/moovweb/gvm.git to /Users/gyuhapark/.gvm
Created profile for existing install of Go at "/usr/local/go"
Installed GVM v1.0.22
Please restart your terminal session or to get started right away run
`source /Users/gyuhapark/.gvm/scripts/gvm`
터미널에 이미지를 넣어놔서 따로 복사해왔다.
가장 아래에 있는 명령어를 입력해서 지금 터미널에 반영해주자.
source ~/.gvm/scripts/gvm
이제 gvm 설치가 끝났다. 확인해보자
gvm version
# 출력
# Go Version Manager v1.0.22 installed at /Users/gyuhapark/.gvm
버전관리하기
gvm을 설치하면 현재 사용중인 버전이 없다. 따라서 현재 설치된 버전을 default로 한 번 잡아줘야 한다.
먼저 현재 설치된 golang을 살펴보자
gvm list
# 출력
# gvm gos (installed)
#
# system
nvm에서 사용할 node버전을 선택하듯이 동일한 명령어로 화면에 나타난 go 버전을 선택해야 한다.
이때, 우리는 초기 설정을 하고 있으므로 --default 옵션을 추가해보자
gvm use system --default
다시 gvm list를 해보면 다음과 같이 화살표로 현재 사용중인 go 버전이 표시된다
gvm list
# 출력
# gvm gos (installed)
#
# => system
#
필자는 현재 1.20 버전을 사용중인데 cosmos-sdk의 테스트넷 노드를 운영하기 위해서는 1.18 버전을 사용해야 한다.
일단 버전 확인 한 번 해주겠다.
gvm listall
# 출력
# go1
# go1.0.1
# go1.0.2
# go1.0.3
# go1.1
# ...중략...
# go1.18
# go1.18beta1
# go1.18beta2
# go1.18rc1
# go1.18.1
# ...중략...
# release.r58.2
# release.r60.1
# release.r60.2
# release.r60.3
그 다음은 원하는 버전을 설치해주자
gvm install go1.18
# 출력
# Downloading Go source...
# Installing go1.18...
# * Compiling...
# go1.18 successfully installed!
다음 명령어를 통해 버전을 변경한다
gvm use 1.18
# 출력
# Now using version go1.18
다시 리스트를 확인해보면 다음과 같다
gvm list
# gvm gos (installed)
#
# => go1.18
# system
go 버전을 확인해보면?
go version
# go version go1.18 darwin/arm64
잘 나온다 ㅎㅎ
참고로 터미널을 껐다가 키면 다시 system 버전으로 선택이 된다.
zsh를 사용중이고, 터미널을 껐다가 켰는데 command not found 명령어가 뜬다면 ~/.zshrc 파일에 다음과 같이 추가해주자.
# ~/.zshrc 파일에 추가
source ~/.gvm/scripts/gvm
'TIPS' 카테고리의 다른 글
[TIPS] Linux/macOS 터미널 비밀번호 없애기 (0) | 2023.04.11 |
---|---|
[TIPS] 코드스테이츠 디너클럽 후기 (0) | 2021.08.11 |
[TIPS] macOS git status 한글 깨짐 현상 해결하기 (0) | 2021.03.02 |
[TIPS] GitHub 새로운 기능, gh CLI 사용하기 (0) | 2020.09.21 |
[TIPS] JEST - 제스트, 테스트 All-in-one 패키지 (0) | 2020.09.12 |