Go to file
xiaoqidun b70271d8a6
Some checks failed
continuous-integration/drone/push Build is failing
feat(国内打包): 国内打包
2023-07-12 10:10:35 +08:00
.drone.yml feat(国内打包): 国内打包 2023-07-12 10:10:35 +08:00
.gitignore feat(忽略文件): 添加忽略文件 2020-09-22 15:14:23 +08:00
DockerfileCN feat(更新版本): 更新版本 2023-07-12 10:00:10 +08:00
DockerfileHK feat(更新版本): 更新版本 2023-07-12 10:00:10 +08:00
LICENSE Initial commit 2020-09-22 15:09:38 +08:00
README.md feat(更新镜像): 裁剪镜像,删除goenv命令 2023-07-06 21:05:25 +08:00

goenv

golang environment

docker

拉取镜像

docker pull hkccr.ccs.tencentyun.com/xiaoqidun/goenv:latest

运行镜像

docker run -it --rm hkccr.ccs.tencentyun.com/xiaoqidun/goenv

编译项目

将项目文件映射到容器内部

linux - bash

docker run --rm -it -v $(pwd):/go/src/app -w /go/src/app hkccr.ccs.tencentyun.com/xiaoqidun/goenv

windows - cmd

docker run --rm -it -v %cd%:/go/src/app -w /go/src/app hkccr.ccs.tencentyun.com/xiaoqidun/goenv

windows - powershell

docker run --rm -it -v "${pwd}:/go/src/app" -w /go/src/app hkccr.ccs.tencentyun.com/xiaoqidun/goenv

在容器内执行命令进行编译

编译linux程序

export GOOS=linux
export GOARCH=amd64
export CGO_ENABLED=0
go build -o main_linux_amd64 main.go

编译android程序

export CC=aarch64-linux-android21-clang
export GOOS=android
export GOARCH=arm64
export CGO_ENABLED=1
go build -o main_android_arm64 main.go

编译windows程序

export GOOS=windows
export GOARCH=amd64
export CGO_ENABLED=0
go build -o main_windows_amd64.exe main.go

编译说明

GOOS

用于标识编译的目标操作系统

GOARCH

用于标识编译的目标系统架构

CGO_ENABLED

  • 0 静态编译禁用CGO适用于android和darwin(apple)外的目标操作系统
  • 1 动态编译使用CGO适用于依靠外部工具链才能完成编译的目标操作系统

动态编译

  • 动态编译必须设置CC变量指定C编译器可执行文件路径或者在PATH变量内的可执行C编译器名称