mac上编译了一个go二进制文件,放到linux上没法执行,需要交叉编译,受高人指点
vim build.sh
#!/bin/bash
#windows
#CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
#mac
#CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go
#linux
#CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
用其中的一条替代当前的go build执行即可。
如,在mac上需要编译一个linux可执行的二进制文件,在原go build之前加上CGO_ENABLED=0 GOOS=linux GOARCH=amd64,执行即可。