用终端切换到main.go目录下
set GOARCH=amd64
//设置目标可执行程序操作系统构架,包括 386,amd64,arm
set GOOS=linux
//设置可执行程序运行操作系统,支持 darwin,freebsd,linux,windows
go build //打包
set GOOS=linux 不好使的话
直接
go env -w GOOS=linux
但是要记得改回来
打包好的文件和目录同名,按照当前目录格式和静态文件一起放到linux go\src目录下运行。
./ xxx.go
如果遇到 permission denied错误 权限不够
chmod u+x *.sh
如果程序需要cgo,打包可能会出现如下错误
imports <cgo目录>: build constraints exclude all Go files in <cgo文件目录>
解决方案:
设置环境变量中的CGO_ENABLED
支持CGO时,set CGO_ENABLED=1
反之则设置,set CGO_ENABLED=0
或者下面这个
go env -w CGO_ENABLED=1
然后可能报错,缺少gcc编译器,需要进行安装
cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%
下载地址
https://jaist.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/8.1.0/threads-posix/seh/x86_64-8.1.0-release-posix-seh-rt_v6-rev0.7z
解压之后添加环境变量