>백엔드 개발 >Golang >Go에서 `go build`와 `go install`의 차이점은 무엇입니까?

Go에서 `go build`와 `go install`의 차이점은 무엇입니까?

DDD
DDD원래의
2024-12-02 18:01:15340검색

What's the Difference Between `go build` and `go install` in Go?

Go Install은 실제로 무엇을 합니까?

Go 문서에서는 go build와 go install in의 차이점을 설명하지 않습니다. 세부 사항. 설치가 make install 패턴을 따를 것으로 예상할 수 있습니다. 즉, 컴파일된 아티팩트를 가져와 최종 지정된 위치에 배치합니다. 그러나 go install의 경우 대신 GOROOT/bin에 배치합니다.

Go Build vs Go Install

go build는 실행 파일만 컴파일합니다. 그리고 지정된 목적지로 이동시킵니다. 반면에 go install은 추가 작업을 수행합니다.

  • 실행 파일을 $GOPATH/bin으로 이동합니다.
  • $GOPATH/pkg로 가져온 기본 패키지가 아닌 모든 패키지를 캐시합니다

소스 코드가 남아 있는 경우 캐시된 종속성은 후속 컴파일에서 활용됩니다. 변경되지 않았습니다.

패키지 트리 시각화

go build 및 go install 사용 결과를 설명하려면:

├── bin
│   └── hello  # by go install
└── src 
    └── hello
        ├── hello  # by go build
        └── hello.go

참고: go build는 현재 디렉터리 내에 실행 파일을 생성하고, go install은 이를 현재 디렉터리에 배치합니다. $GOPATH/bin.

자세한 정보와 고급 기능은 공식 Go 문서를 참조하세요: [https://go.dev/doc/install/troubleshooting#how-go-install-works]( https://go.dev/doc/install/troubleshooting#how-go-install-works)

위 내용은 Go에서 `go build`와 `go install`의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.