【备忘录】Golang交叉编译】的更多相关文章

apt-get install gcc-mingw-w64 env CGO_ENABLED= GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc go build -o ./app/app.exe ./app/main.go env CGO_ENABLED= GOOS=windows GOARCH= CC=i686-w64-mingw32-gcc go build -o ./app/app.exe ./app/main.go Gox 是一个简单…
一.何为交叉编译 简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统:同样,同一个操作系统也可以在不同的体系结构上运行. 二.交叉编译前的准备 本文只介绍Windows平台下的Golang交叉编译 安装TDM-GCC 下载地址:http://tdm-gcc.…
Golang 支持交叉编译,在一个windows平台可以生成linux或Mac系统下的可执行文件. Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go Linux 下编译 Mac 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=dar…
问题 golang如何在一个平台编译另外一个平台可以执行的文件.比如在mac上编译Windows和linux可以执行的文件.那么我们的问题就设定成:如何在mac上编译64位linux的可执行文件. 解决方案 golang的交叉编译要保证golang版本在1.5以上,本解决方案实例代码1.9版本执行的. 我们想要编译的文件hello.go hello.go package main import "fmt" func main() { fmt.Printf("hello, wo…
windows平台之下使用 go env 能看到go本身的配置的环境变量,其中红框框起来的变量是交叉编译需要改动的选项, 由于是win平台开发,但是跑起来的程序都是在linux,所以linux转win的就不搞了,如果有需要请百度谷歌 SET GOOS=linux SET GOARCH=amd64 就下来就可以对go程序就行build编译为linux运行的软件了 go build 但是注意 在linux上需要权限才能运行  添加权限 chmod +x go编译文件 golang执行该软件即可运行,…
各平台的GOOS和GOARCH参考 OS ARCH OS version linux 386 / amd64 / arm >= Linux 2.6 darwin 386 / amd64 OS X (Snow Leopard + Lion) freebsd 386 / amd64 >= FreeBSD 7 windows 386 / amd64 >= Windows 2000 $ cd /usr/local/go/src $ sudo CGO_ENABLED=0 GOOS=linux GO…
gox - 一款简单的交叉编译工具 下载地址:https://github.com/mitchellh/gox 使用 go get 命令安装: go get github.com/mitchellh/gox 同 go build 一样, 用 gox 编译项目 〉 只生成linux平台amd64的文件: gox -osarch="linux/amd64" 只生成windows平台amd64文件: gox -osarch="windows/amd64" 只生成mac平台…
起因: 在项目中,我们每一次提交都需要添加commit 信息,而且我们的commit 信息,比较繁琐.我决定用golang语言编写一个小工具. 我决定使用语言:golang,使用工具:gox包. gox github  https://github.com/mitchellh/gox 创建一个文件,写入以下golang代码,过于简单不做解释. package main import ( "time" "fmt" "io/ioutil" "…
环境:Debian jessiego 1.7.4Windows 7 背景: 在debian中写好的程序编译后在windows上运行. 程序中使用了sqlite3 import( _ "github.com/mattn/go-sqlite3" ) 问题: 在debian上使用如下语句编译后,在windows7里运行会提示sqlite3有问题: CGO_ENABLED= GOOS=windows GOARCH=amd64 go build 问题如下: database connection…
GOOS:目标平台的操作系统(darwin.freebsd.linux.windows) GOARCH:目标平台的体系架构(386.amd64.arm) Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build Linux 下编译 Mac 和 Windows 64位可执行程序 CGO_ENABLED…