SW/리눅스

Ubuntu 18.04 : GO 설치하는 방법, 예제, 구현

얇은생각 2020. 10. 27. 07:30
반응형

GO는 구글이 만든 현대 오픈소스 프로그래밍 언어이다. Kubernetes, Docker, Grafana를 포함한 많은 인기 있는 응용프로그램이 Go로 작성되었습니다.

이 튜토리얼은 Ubuntu 18.04 컴퓨터에서 Go를 다운로드하고 설치하는 단계를 안내합니다.

 

 

Ubuntu 18.04 : GO 설치하는 방법, 예제, 구현

 

 

필수 구성 요소

이 튜토리얼을 계속하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인합니다.

 

 

 

Ubuntu에 Go 설치

다음 단계에 따라 Ubuntu 18.04에 Go on Ubuntu를 설치합니다.

 

1. Go tarball 다운로드

이 글을 쓸 당시 GO의 최신 안정판은 버전 1.13입니다. 타르볼을 다운로드하기 전에 공식 이동 다운로드 페이지를 방문하여 사용 가능한 새 버전이 있는지 확인합니다.

GO 바이너리를 다운로드하려면 wget 또는 curl을 사용할 수 있습니다.

wget https://dl.google.com/go/go1.13.linux-amd64.tar.gz

 

 

2. Go tarball 확인

tarball 체크섬을 확인하려면 sah256sum 명령을 사용할 수 있습니다.

sha256sum go1.13.linux-amd64.tar.gz

 

 

출력은 다음과 같습니다.

68a2297eb099d1a76097905a2ce334e3155004ec08cdea85f24527be3c48e856  go1.13.linux-amd64.tar.gz

 

 

위의 명령에서 인쇄된 해시가 다운로드 페이지의 해시와 일치하는지 확인합니다.

 

 

3. Go tarball 추출

tar를 사용하여 /usr/local 디렉토리에 tarball을 추출합니다.

sudo tar -C /usr/local -xzf go1.13.linux-amd64.tar.gz

 

 

4. 경로 변수 조정

시스템에서 실행 가능한 이동 바이너리를 찾을 위치를 알려면 $PATH 환경 변수를 조정해야 합니다. 이 작업은 /etc/profile 파일(시스템 전체 설치의 경우) 또는 $HOME/.profile 파일(현재 사용자 설치의 경우)에 다음 줄을 추가하여 수행할 수 있습니다.

# ~/.profile

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

 

 

파일을 저장하고 새 PATH 환경 변수를 현재 셸 세션에 로드합니다.

source ~/.profile

 

 

5. 이동 설치 확인

Go 버전을 인쇄하여 설치를 확인합니다.

go version

 

 

출력은 다음과 같아야 합니다.

go version go1.13 linux/amd64

 

 

 

GO 시작

작업 공간을 설치하고 클래식한 "Hello World" 메시지를 간단하게 인쇄할 수 있는 간단한 "Hello World" 프로그램을 구축하겠습니다.

01. 기본적으로 워크스페이스 디렉토리는 $HOME/go로 설정되어 있습니다. 디렉토리를 만들려면 다음을 입력합니다.

mkdir ~/go

 

 

 

02. 작업영역 내부에 새 디렉토리 src/hello를 작성합니다.

mkdir -p ~/go/src/hello

 

 

해당 디렉토리에 다음 내용으로 hello.go라는 파일을 작성합니다.

# ~/go/src/hello/hello.go

package main

import "fmt"

func main() {
    fmt.Printf("Hello, World\n")
}

 

 

Go Workspace 디렉토리 계층 구조에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

 

 

03. 파일을 빌드하려면 ~/go/src/hello 디렉토리로 이동하여 go build 명령을 실행합니다.

cd ~/go/src/hello
go build

 

 

위 명령은 hello라는 이름의 실행 파일을 빌드합니다.

 

 

04. 다음 명령만 실행하여 실행 파일을 실행할 수 있습니다.

./hello

#  Hello, World

 

반응형