GOARCH="arm64" GOBIN="" GOCACHE="/Users/fperson/Library/Caches/go-build" GOENV="/Users/fperson/Library/Application Support/go/env" GOEXE="" GOFLAGS="" GOHOSTARCH="arm64" GOHOSTOS="darwin" GOINSECURE="" GOMODCACHE="/Users/fperson/.asdf/installs/golang/1.16.4/packages/pkg/mod" ...
操作在m1 mac mini上完成,go工具链安装在$HOME/goroots路径下。mac上需确保已安装rosetta 2。首先,下载并安装amd64的go 1.15版本。通常仅需下载即可。通过clone方式获得go源码。从github.com/golang/go仓库克隆,master分支即为1.16预发布版本。预编译darwin/arm64工具链。此工具链本身应为arm64版...
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build -o macTool ./app/api/main.go 生成linux平台可执行文件 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o linuxTool ./app/api/main.go 生成arm平台可执行文件 CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o armTool ./app/api/main.g...
# Linux 去执行SETCGO_ENABLED=0SETGOOS=linuxSETGOARCH=amd64 go build main.go 参数说明 CGO_ENABLED: CGO 表示golang中的工具,CGO_ENABLED 表示CGO禁用,交叉编译中不能使用CGO的 GOOS: 目标平台 mac 对应darwin linux 对应linux windows 对应windows GOARCH:目标平台的体系架构【386,amd64,arm】, 目前市面...
go build main.go 参数说明 CGO_ENABLED: CGO 表示golang中的工具,CGO_ENABLED 表示CGO禁用,交叉编译中不能使用CGO的 GOOS: 目标平台 mac 对应darwin linux 对应linux windows 对应windows GOARCH:目标平台的体系架构【386,amd64,arm】, 目前市面上的个人电脑一般都是amd64架构的 ...
GOARCH:目标可执行程序操作系统构架,包括 386,amd64,arm 早期go版本注意事项: Golang version 1.5以前版本在首次交叉编译时还需要配置交叉编译环境: CGO_ENABLED=0 GOOS=linux GOARCH=amd64 ./make.bash CGO_ENABLED=0 GOOS=windows GOARCH=amd64 ./make.bash ...
● 6g是amd64的go编译器,它生成的是.6文件。 ● 386一般使用8g命令,它生成的一般是.8格式的文件。 ● 当然还有一个5g的命令是用于arm的cpu, 同理amd64用6l,386用8l,arm用5l的链接器 明白了上面就开始交叉编译go的可执行程序了 编译对应平台下的执行文件 ...
go build main.go SETCGO_ENABLED=0SETGOOS=linuxSETGOARCH=amd64 go build main.go GOOS:目标可执行程序运行操作系统,支持 darwin,freebsd,linux,windows GOARCH:目标可执行程序操作系统构架,包括 386,amd64,arm 结尾: 是不是感觉Go的编译非常简单方便...
Windows 下编译 Mac 和 Linux 64位可执行程序 SET CGO_ENABLED=0SET GOOS=darwin SET GOARCH=amd64gobuild SET CGO_ENABLED=0SET GOOS=linux SET GOARCH=amd64gobuild GOOS:目标平台的操作系统(darwin、freebsd、linux、windows) GOARCH:目标平台的体系架构(386、amd64、arm) ...
Windows 下编译 Mac 和 Linux 64位可执行程序 SET CGO_ENABLED=0 SET GOOS=darwin SET GOARCH=amd64 go build main.go SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64 go build main.go GOOS:目标平台的操作系统(darwin、freebsd、linux、windows) GOARCH:目标平台的体系架构(386、amd64、arm) 交叉...