Go를 사용한 사용자 정의 빌드 단계
go 빌드는 일반적으로 Go 프로그램을 컴파일하는 데 충분하지만 추가 작업이나 명령이 필요한 상황이 발생할 수 있습니다.
Go 도구의 제한 사항
go 도구 모음은 빌드 중에 임의 명령 실행을 직접 지원하지 않습니다. pkg-config 지시문은 범용 솔루션이 아닌 C 라이브러리를 연결하기 위한 특정 사례입니다.
해결 방법
외부 Makefile:
한 가지 옵션은 외부 Makefile을 사용하여 추가 빌드 단계를 조정하는 것입니다. 그런 다음 다음 구문을 사용하여 go build 명령으로 명시적으로 호출할 수 있습니다.
<code class="go">go build -ldflags="-X main.version=$(shell cat VERSION)"</code>
Makefile에서 추가 단계는 빌드 대상의 대상 및 전제 조건으로 정의할 수 있습니다.
별도 명령:
또는 추가 명령을 이전 또는 이후에 별도의 단계로 수동으로 실행할 수도 있습니다. Go Build를 호출합니다. 이 접근 방식은 더 많은 수동 개입이 필요하지만 더 큰 유연성을 제공합니다.
라이브러리 패키지 모범 사례
이러한 해결 방법에도 불구하고 라이브러리 패키지는 go get을 사용하여 쉽게 컴파일할 수 있도록 노력해야 합니다. 의존성 해결. 복잡한 빌드 요구 사항은 독립 실행형 애플리케이션용으로 남겨두어야 합니다.
향후 개선 사항
Go 1.4 릴리스에는 생성 명령이 도입되어 개발자가 소스에서 전처리 명령을 실행할 수 있습니다. 파일. 그러나 이는 여전히 명시적으로 호출해야 하는 별도의 단계이며 일반적인 Go 빌드 프로세스와 통합되지 않습니다.
위 내용은 다음은 질문-답변 형식과 기사의 본질을 포착하는 몇 가지 제목 옵션입니다. 옵션 1(\'go build\' 제한 사항에 중점): * `go 이후의 사용자 정의 빌드 단계를 실행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!