안녕하세요, 주니어 개발자 Eon입니다.
이번 포스트는 Golang 개발환경 세팅입니다.
환경은 ubuntu 18.04 LTS입니다.
순서는 다음과 같이 진행하겠습니다.
위의 링크에 접속하시면 환경마다의 설치 과정이 소개되어 있습니다.
저는 ubuntu 환경이므로 linux 환경의 순서로 소개하겠습니다.
현재 가장 최신 릴리즈 버전은 1.17.3입니다. (현재 2021-11-19, 최신 릴리즈 2021-11-04)
위의 링크에 Download Go for Linux 버튼을 클릭하시면 바로 다운로드가 진행됩니다.
Windows 환경에 Linux 환경의 VM을 사용하는 분이라면 해당 링크를 복사해서 wget으로 다운로드 받으시면 됩니다.
wget https://golang.org/dl/go1.17.3.linux-amd64.tar.gz
이후엔 가이드에 나온 것처럼 기존 버전이 있다면 제거를 먼저 진행하고, 다운로드 받은 gzip 압축 파일의 압축 해제를 합니다.
# rm -rf /usr/local/go && tar -C /usr/local -xzf go1.17.3.linux-amd64.tar.gz
root가 아니라면 아래와 같이 sudo를 붙여서 진행하시면 됩니다.
$ sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.17.3.linux-amd64.tar.gz
위와 같이 압축 해제된 go 디렉터리가 새로 생긴 것을 확인했습니다.
설치가 완료되었으면 환경변수인 GOPATH를 설정함으로써 golang을 사용할 수 있게 해주어야 합니다.
아래의 환경변수 세팅을 ~/.profile에 추가합니다.
export PATH=$PATH:/usr/local/go/bin
추가가 완료되었으면 변경된 환경변수를 적용하기 위해 아래의 명령어를 실행합니다.
.profile은 재부팅하면 적용이 되지만 현재 쉘 환경에 바로 적용시키기 위함입니다.
source ~/.profile
환경변수 설정이 끝났으면 아래와 같이 go 명령어가 잘 실행되는지 확인합니다.
go version
아래와 같이 go 환경변수를 모두 확인할 수도 있습니다.
go env
위와 같이 모두 문제 없이 잘 설치된 것을 알 수 있습니다.
VScode 상에서 개발 환경 설정은 go extension을 설치하는 것으로 모두 끝납니다.
아래의 extension을 설치하고, 우측 하단에 gopkgs, gopls 등 설치되지 않은 게 있다며 알림이 올라오는데, install All 한 번만 클릭하시면 자동으로 기본적인 tool들을 설치합니다.
먼저, 아래와 같이 디렉터리 경로를 만들고 hello.go 파일을 생성합니다.
mkdir -p ~/goprojects/hello
touch ~/goprojects/hello/hello.go
이제 VScode에서 hello.go 파일을 수정하여 Hello World!!를 출력하겠습니다.
package main
import "fmt"
func main() {
fmt.Println("Hello World!!")
}
- package main : hello.go 파일은 main 패키지임을 알립니다.
main 패키지는 진입점이며, main 패키지 파일 내에는 리턴이 없는 main 함수가 필요합니다.- import "fmt" : golang standard library 중 fmt 표준 라이브러리를 포함합니다.
- func main() {...} : main 함수를 작성합니다. 패키지를 초기화한 후에 가장 먼저 실행되는 함수입니다.
- fmt.Println("Hello World!!") : fmt는 formatted I/O으로, C언어의 stdio와 같은 표준 입출력 라이브러리입니다. Println은 각각의 피연산자 사이에 공백을 추가하고, 가장 마지막에 줄바꿈을 포함합니다. fmt.Print는 공백을 추가하지 않으며, 줄바꿈도 하지 않습니다.
이제 위의 코드를 실행하겠습니다.
실행하는 방법은 두 가지를 소개하겠습니다.
go run hello.go
go build hello.go && ./hello
- go run hello.go : main 패키지 파일을 컴파일 후에 바이너리 파일을 남기지 않고 메모리 위에서 바로 실행합니다.
- go build hello.go : main 패키지 파일을 import 시킨 모든 라이브러리, 연결된 패키지와 함께 컴파일하며 바이너리 파일을 생성합니다.
- ./hello : 빌드된 hello 바이너리 파일을 실행합니다.
위와 같이 Hello World!!가 출력되면 완료입니다.
이상으로 Golang 개발 환경 설정 포스팅을 마치겠습니다.
감사합니다.👍