Go 프로그램을 완전한 실행 가능 바이너리로 실행하고 싶으십니까? Go 설치 명령은 작업공간의 bin 디렉터리에 애플리케이션을 컴파일하고 설치합니다. 방법은 아래와 같습니다.
Golang: Go Install 명령을 사용하는 방법 (Jack Wallen의 저자) 에서 번역되었습니다 .
Go 언어에는 애플리케이션의 바이너리 패키지를 컴파일하고 애플리케이션 사용자가 액세스할 수 있는 경로에 설치하는 특수 명령이 있습니다.
우리 모두가 이해할 수 있도록 설명하겠습니다.
먼저 PATH에 대해 알아보겠습니다. PATH는 명령을 실행하는 데 필요한 실행 파일을 찾을 수 있는 위치를 시스템에 지시하는 특수 디렉터리 목록입니다. 예: Linux의 경우 다음 명령을 실행합니다.
echo $PATH
출력에서 다음과 같은 내용을 볼 수 있습니다.
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
기본적으로 이는 이러한 디렉터리에 있는 모든 실행 파일이 파일 시스템 계층 구조의 어느 곳에서나 실행될 수 있음을 의미합니다. PATH 덕분에 ls와 같은 명령에 전체 경로를 사용할 필요가 없습니다.
/usr/bin/ls
대신 ls를 실행하여 애플리케이션을 사용할 수 있습니다.
Go를 설치하면 Go의 경로가 특정 위치로 기본 설정된다고 가정합니다. 해당 경로가 어디에 있는지 확인하려면 다음 명령을 실행하세요.
echo $GOPATH
다음과 같은 내용이 표시됩니다.
/home/jack/go/
다음 명령을 사용하여 이 경로를 설정할 수 있습니다.
go env -w GOPATH=$HOME/go
$HOME 은 _/home/USER_(여기서 _USER_는 Linux 사용자 이름)와 동일합니다. .bash_profile 파일에서 설정할 수도 있습니다. 다음 명령을 사용하여 편집할 파일을 엽니다.
nano ~/.bash_profile
파일 맨 아래에 다음을 추가합니다.
export GOPATH=$HOME/go
파일을 얻으려면 다음 명령을 사용하십시오.
source ~/.bash_profile
원하는 경우 이 경로를 변경할 수 있지만 항상 그대로 두는 것이 가장 좋습니다(특히 시작할 때).
자, 이제 GOPATH가 무엇인지, 어떻게 사용하는지 아셨나요?
내가 말해주지.
pi의 근사값을 계산하는 프로그램을 작성해 보겠습니다. 이 앱의 작동 방식은 다음과 같습니다.
- 패키지 fmt , math 및 math/rand 를 가져옵니다 .
- 난수 생성기 시드를 설정하고 _totalPoints_를 1백만으로 설정하고 _pointsInsideCircle_을 0으로 설정합니다.
- for 루프를 사용하여 _totalPoints_를 반복하고 x와 y를 모두 임의의 부동 소수점 수인 64로 설정한 다음 이 숫자를 사용하여 x_x와 y_y를 곱합니다(_math.Sqrt_ 함수 사용).
- _piApprox_를 _pointsInsideCircle_ 및 _totalPoints_의 float64의 4배로 설정합니다.
- 마지막으로 값을 출력합니다.
코드는 다음과 같습니다.
package main
import (
"fmt"
"math"
"math/rand"
)
func main() {
rand.Seed(42)
totalPoints := 1000000
pointsInsideCircle := 0
for i := 0; i < totalPoints; i++ {
x := rand.Float64()
y := rand.Float64()
distance := math.Sqrt(x*x + y*y)
if distance < 1 {
pointsInsideCircle++
}
}
piApprox := 4 * float64(pointsInsideCircle) / float64(totalPoints)
fmt.Printf("Using this method, our approximate value of π: %f\n", piApprox)
}
다음 명령을 사용하여 새 프로젝트 디렉터리를 만듭니다.
mkdir ~/randompi
다음 명령을 사용하여 이 디렉터리로 변경합니다.
cd randompi
다음 명령을 사용하여 프로젝트를 초기화합니다.
go mod init randompi
다음 명령을 사용하여 main.go 파일을 만듭니다.
nano main.go
이 파일에 코드를 붙여넣고 저장하세요.
다음 명령을 사용하여 애플리케이션을 빌드합니다.
go build
이제 _randompi_라는 이진 실행 파일이 표시됩니다. 다음 명령을 사용하여 새로운 Go 애플리케이션을 실행할 수 있습니다.
./randompi
기이. 하지만 다른 디렉터리에서 명령을 실행하려면 어떻게 해야 할까요? Linux이므로 /usr/local/bin 디렉터리에 복사할 수 있지만 Go에서는 이미 이 목적을 위한 GOPATH를 제공합니다. 이렇게 하려면 go install을 사용하면 새 바이너리가 GOPATH로 이동됩니다. 이렇게 하려면 다음 명령을 실행하십시오.
go install
ls 명령을 실행하면 _randompi_ 실행 파일이 이제 사라진 것을 알 수 있습니다. 어디로 갔나요? Go가 그것을 GOPATH로 옮겼습니다. 다음을 사용하여 GOPATH를 나열하는 것을 잊지 마세요.
echo $GOPATH
그러면 GOPATH가 인쇄됩니다. 여기서 중요한 점은 Go가 실행 파일을 GOPATH의 루트에 복사하는 것이 아니라는 것입니다. 대신 해당 경로의 bin 디렉터리에 복사합니다. Linux 용어에서 bin은 바이너리 파일의 공통 디렉터리입니다(bin = 바이너리). 실행 파일이 경로에 복사되었는지 확인하려면 다음 명령을 실행하십시오.
ls $GOPATH/bin
_randompi_가 나열된 것을 볼 수 있습니다.
Linux를 알고 계시 다면 아마도 다음에 무슨 일이 일어날지 이미 이해하고 계실 것입니다. GOPATH를 설정했다고 해서 그것이 Linux PATH에 있다는 의미는 아닙니다. 이 경고에도 불구하고 Go에서는 실행 명령을 처리했습니다. 다음 명령을 실행하는 경우:
go run randompi
$GOPATH/bin에서 바이너리 실행 파일을 찾아 Randompi 애플리케이션을 실행하면 출력은 다음과 유사합니다.
Using this method, our approximate value of π: 3.139740
여기에 약간의 트릭이 있습니다.
go mod init randompi를 사용하여 애플리케이션을 초기화하면 다음과 같은 내용을 포함하는 go.mod 파일이 생성됩니다.
module randompi
go 1.22.1
애플리케이션 이름을 gopi로 바꾸고 싶다고 가정해 보겠습니다. 당신이 해야 할 일은 go.mod 파일을 편집하고 randompi 모듈을 gopi 모듈로 변경하는 것뿐입니다. 애플리케이션을 다시 빌드하고 다시 설치한 후 다음을 사용하여 애플리케이션을 실행할 수 있습니다.
go run gopi
이것이 나의 Go 친구들 , go install
명령 사용의 기본입니다. 이는 Go 언어를 계속 배우면서 중요한 도구가 될 것입니다 .
Google Python Foundation 팀이 해고되었습니다. Google은 해고를 확인했으며 Flutter, Dart 및 Python 관련 팀은 GitHub 핫리스트로 돌진했습니다. 오픈 소스 프로그래밍 언어와 프레임워크가 어떻게 그렇게 귀여울 수 있습니까? Xshell 8 베타 테스트 개시: RDP 프로토콜을 지원하고 Windows 10/11에 원격으로 연결할 수 있습니다. 승객이 고속철 WiFi에 연결하면 중국 코더의 "35세 저주"가 고속으로 연결됩니다. 레일 WiFi MySQL의 첫 번째 장기 지원 버전 8.4 GA AI 검색 도구 Perplexica: 완전히 오픈 소스이며 무료이며 Perplexity의 오픈 소스 대안입니다. Huawei 경영진은 오픈 소스 Hongmeng의 가치를 평가합니다. 지속적인 탄압에도 불구하고 여전히 자체 운영 체제가 있습니다. 독일의 자동차 소프트웨어 회사 인 Elektrobit는 우분투 기반의 자동차 운영체제 솔루션을 오픈소스화했습니다.이 기사는 Yunyunzhongsheng ( https://yylives.cc/ ) 에 처음 게재되었습니다 . 누구나 방문하실 수 있습니다.