먼가 복잡하다.
일단 모듈 패스는 초기 모듈/경로/패키지 명 식으로 잡히는 듯.
편리하다면 편리한데.. 직관적으로 와닫진 않는 느낌.. 그냥 .a나 .o로 빌드하고 링크 하는건 가능하려나?
아 그리고 go build 명령에 의해서 빌드 될 때
mod init의 가장 마지막 명칭으로 바이너리가 생성된다.
test/m 으로 패키지를 지었기에, 바이너리가 m으로 생성되었다.
| $ tree . ├── go.mod ├── lib │ ├── div │ │ └── div.go │ └── sub │ └── sub.go ├── m ├── main.go └── sum └── sum.go | $ go build # test/m ./main.go:5:2: imported and not used: "test/m/lib/div" ./main.go:6:2: imported and not used: "test/m/sum" | $ go mod init test/m go: creating new go.mod: module test/m go: to add module requirements and sums: go mod tidy $ cat go.mod module test/m go 1.18 | 
| $ cat main.go package main import ( "fmt" "test/m/lib/div" "test/m/sum" ) func main() { fmt.Println("hello world") } | $ cat lib/div/div.go package div func div(a float32, b float32) float32 { return a / b } | $ cat sum/sum.go package sum func sum (a int, b int) int { return a + b } | 
'Programming > golang' 카테고리의 다른 글
| golang mac address 얻기 (0) | 2022.09.28 | 
|---|---|
| golang method (0) | 2022.09.27 | 
| golang 함수 인자에 함수 넣기 (0) | 2022.09.27 | 
| golang package main (0) | 2022.09.23 | 
| golang REST client (0) | 2022.09.23 | 





