0
点赞
收藏
分享

微信扫一扫

go 常用命令记录

芒果六斤半 2021-09-30 阅读 155
日记本

交叉编译

  1. 在mac上编译64位linux, Windows的命令编译命令
# Linux
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build filename.go
 
# Windows
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build filename.go
#如: CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build -o helloworld-windows helloworld.go
  1. 在windows 上编译64位linux的命令编译命令
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o ./main ./main.go
  1. Linux下编译Mac, Windows
# Mac
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build filename.go
 
# Windows
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build filename.go

逃逸分析

 go build -gcflags='-m' . 2>&1
# reservation
.\main.go:39:12: inlining call to log.Error
.\main.go:39:12: inlining call to zerolog.(*Logger).Error
.\main.go:47:11: inlining call to sync.(*Once).Do
.\main.go:47:12: can inline (*program).Stop.func1
.\main.go:69:13: inlining call to fmt.Println
.\main.go:58:12: inlining call to log.Error
.\main.go:58:12: inlining call to zerolog.(*Logger).Error
.\main.go:20:7: p does not escape
.\main.go:20:24: env does not escape

举报

相关推荐

0 条评论