Go를 설치해봅시다.
리눅스와 윈도우 환경에 대해 설명합니다.
(제가 지금 맥북이 없어서 맥은 없습니다 ㅇㅅㅇ)
리눅스 환경
저는 Ubuntu 18.04 LTS 환경에서 진행하였습니다.
데비안/우분투
sudo apt-get install golang
CentOS/레드햇
sudo yum install golang
과 같은 명령어로 설치가 가능합니다.
***일반적인 apt를 이용하면 go 10 버전이 깔립니다. 11이상의 버전이 필요한 경우 직접 설치해야합니다. ***
직접설치
https://golang.org/dl/ 에서 tar.gz파일을 다운받습니다.
wget으로 가능한지는 모르겠네요
다운받고 파일이 있는 디렉토리로 이동한 후sudo tar -C /usr/local/ -xzf go버전.linux-amd64.tar.gz
그냥 탭을 눌러서 파일 이름 자동완성 시키는것을 추천합니다..
Path 설정을 해봅시다. /etc/profile.d/에 쉘스크립트를 (golang.sh) 만듭니다.sudo vi /etc/profile.d/golang.sh
export GOROOT=/usr/local/go export PATH=$PATH:/$GOROOT/bin |
GOPATH를 설정합시다.
원하는 위치에서 작업하시면 됩니다.
저는 ~/projects/go 에서 작업공간을 잡겠습니다.
mkdir -p ~/projects/go
cd ~/projects/go
일단 디렉토리를 만들고
export GOPATH=$HOME/projects/go
를 쳐줍시다.
/etc/profile도 수정해줍시다.
sudo vi /etc/profile
로 들어가서 마지막 줄에
export PATH=usr/local/go/bin:$PATH
export GOPATH=$HOME/projects/go
export $PATH:$GOPATH/bin
을 추가해줍시다.
별도의 경로에 패키지 설치한 경우(GOROOT 설정)
tar.gz파일을 받아 압축을 푼 경우(ex. 관리자권한x 홈디렉토리에 설치한 경우, 64비트 우분투, go 1.12.7버전)
tar -C $HOME -xzf go1.12.7.linux-amd64.tar.gz
과 같이 설치 가능합니다.
만약 패키지를 통해 직접 설치했거나 /usr/local/go 경로가 아닌곳에 설치했다면 GOROOT를 설정해주어야합니다.
예를들어 홈디렉토리의 go라는 디렉토리를 만들어 설치했다면
export GOROOT=$HOME/go
etc/profile에 아래를 추가해줍니다.
export PATH=$HOME/go/bin:$PATH
를 이용하여 GOROOT와 bin(실행파일)의 경로들을 지정해줍시다. 이후 GOPATH를 지정해주면 됩니다.
(sudo 권한으로 $HOME 대신 /usr/local 에 설치하면 패키지 관리자로 설치한 것과 차이가 없으니 goroot설정이 필요 없습니다. )
go env
를 통해서 goroot, gopath, gobin 등의 위치를 확인해봅시다.
저는 goroot가 /usr/local/go 가아닌 /usr/lib/go 로 되어있네요 저기에 설치되었나 봅니다.
윈도우 환경
윈도우는 GUI인스톨러를 이용하기 때문에 간단합니다.
https://golang.org/dl/ 로 이동하면
여러가지 다운로드 링크 들이 나타납니다.
여기서 Go 설치 글을 읽고 계신 분들이라면 보통
자기 컴퓨터가 몇 비트 운영체제인지는 다들 알고 프로그램 설치도 여러번 해봤을거라고 생각되니
자세한것은 생략합니다.
큰 이변이 없다면 C:\Go에 설치될것입니다.
만약 다른곳에 설치했는데 cmd에서 go 를 입력했을때 위와같이 나오지 않는다면
환경변수에서 설정을 해주어야 합니다.
윈도우10 기준으로
제어판 -> 시스템 및 보안 -> 시스템 -> 고급 시스템 설정 -> 환경변수 -> 시스템 변수
의 PATH에
%USERPROFILE%\go\bin
을 추가해주시면 됩니다.
GOPATH 환경변수는 workspace위치를 지정해줍니다.
개발될 go나 외부 라이브러리들을 깃허브에서 가져올때 저장될 위치입니다.
저는 D드라이브에 project\go 에 설정하겠습니다.
(저는 다른 계정을 따로 사용하지 않아서 그냥 바로 사용자 변수에 추가했습니다.)
============================================================
자 여기서 부터는 윈도우와 리눅스 동일합니다.
적당히 go 파일을 만듭시다.
파일 이름은 hello.go 이고
내용은
1
2
3
4
5
6
7
|
package main
import "fmt"
func main() {
fmt.Println("Hello, World")
}
|
cs |
입니다.
이제 쉘이나 cmd(powershell)에서
go run hello.go
를 입력하면
go는 제대로 동작하네요 이제 gopath를 확인해봅시다.
go get golang.org/x/tools/cmd/...
(.(온점) 3개 입니다.)
일단 뭔가 실행되는듯 하더니 아무일도 없네요
gopath로 가보죠
gopath로 가보니 뭔가 잔뜩 생겨있네요.
위 명령어는 go get을 이용하여 외무의 패키지를 로컬 컴퓨터로 불러와 설치하는 명령어입니다.
리눅스에서는
처럼 진행됩니다.
마지막으로
go get golang.org/x/tools/cmd/goimports
를 쳐주면 일단 설치과정이 끝납니다.
(이 패키지는 자동으로 import경로를 추론해 소스 상단에 붙여주는 도구입니다.)
여기가지 Go를 설치해보았습니다.
GOPATH 때문에 뭔가 복잡해보이네요
공부를 위해 정리하고 있는것이기 때문에 오류가 있으면 댓글로 알려주세요
'Language > Go' 카테고리의 다른 글
[GoLang] 연산자 (0) | 2019.08.08 |
---|---|
[GoLang] 자료형, 변수, 상수 (0) | 2019.08.04 |
[GoLang] Go 개발 환경 구축하기 (VS Code, vim) (0) | 2019.08.01 |
[GoLang] Hello, playground (0) | 2019.08.01 |
[GoLang] Go를 시작하며 (0) | 2019.08.01 |