본문 바로가기
Language/Go

Go - compile 과 install

by ocwokocw 2021. 11. 28.

참조: https://go.dev/doc/tutorial/compile-install

- 개요

이번에는 go 의 새로운 명령어 2 가지를 배워보도록 한다. go run 명령어는 프로그램을 자주 변경할 때 프로그램을 compile 하고 실행 시키는데 유용한 단축 명령어(shortcut)지만 실행 가능한 binary 를 생성하지는 않는다.
  • go build 명령어는 package 를 compile 하지만 결과물을 설치하지는 않는다.
  • go install 은 package 를 compile 하고 설치한다.

- build

hello directory 에서 go build 명령어를 실행하여 코드를 compile 하고 실행가능한 파일을 생성한다.
 
go build
ls
go.mod          hello           hello.go
./hello 
Great to see U, Gladys!
Hail, A! Well met!
Hail, B! Well met!
Hail, C! Well met!
 
 
위의 결과처럼 go build 를 수행하고 나면 생성되는 hello 파일을 실행해서 코드가 동작하는지 확인해볼 수 있다. go build 를 수행하면 실행할 수 있는 파일이 생성되긴 하지만, prompt 에서 실행하려면 해당 directory 에 있거나 실행 가능한 path 를 지정해주어야 하는 상황이다.

- install

go list 명령어를 이용하면 install 경로를 알아낼 수 있다. 
 
go list -f '{{.Target}}'
/Users/user/go/bin/hello
 
 
위에서 출력되는 경로는 go install 을 수행하면 해당 경로로 설치가 된다는 말이다. 윈도우의 환경 변수와 같이 Linux 나  Mac 에서 PATH 를 출력해보면 /Users/user/go/bin 이 경로로 잡혀있을 것이다.
 
echo $PATH
/usr/local/go/bin:/Users/user/go/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/opt/homebrew/bin
 
 
이제 go install 명령을 실행해보자. hello 실행파일이 없는 곳에서도 hello 를 타이핑하면 hello 실행파일이 동작하는것을 알 수 있다.

'Language > Go' 카테고리의 다른 글

Go - Go with TDD  (0) 2021.12.04
Go - Go 와 Gin 을 활용한 RESTful API 개발  (0) 2021.11.28
Go - test  (0) 2021.11.28
Go - multiple input 과 return  (0) 2021.11.28
Go - random 과 slice  (0) 2021.11.28

댓글