golang 在 windows 下编译出 linux 二进制可执行文件的软件套装合集 [go 1.7.3环境]

时间:2022-03-13 02:43:25

golang 很好用,不过要把工具链弄完整. 要不你会发现怎么不能编译跨平台的呀? 怎么写代码没提示啊? ...

这一整套弄下来并不容易. 所以精心准备了一套工具方便大家使用. 软件列表如图. 安装顺序比较重要,依次为:
wxdevcpp_7.4.2_full_setup.exe
go1.7.3.windows-386.msi
liteidex30.3.windows-qt5.zip

原因是 golang 跨平台编译需要 gcc,而 liteide 又需要它们两者.

--------------------------------------------------
(地址是 golang 大集合,请进入其 "go1.7.3合集"子目录):
https://pan.baidu.com/s/1c3MLKo4

[图片]

golang 在 windows 下编译出 linux 二进制可执行文件的软件套装合集 [go 1.7.3环境]

--------------------------------------------------

编译的方法参考了园子网友的文章,不过 wxdevcpp 更容易找到,而且是我一直都用的编译器,所以用了它带的 gcc.

from http://softhub.newbt.net/160/%7BBFEF9B7F-9993-9A8D-FFB4-CF6EECA4F767%7D-0.html

Golang在windows下交叉编译linux程序 [转贴加 clq 的修正]
2016-04-19 15:17 by 埋头前进的码农, 3494 阅读, 0 评论, 收藏, 编辑

1、下载相关程序。

  Golang下载:http://www.golangtc.com/download

  Git下载:http://git-scm.com/download/

  TDM-GCC下载:http://tdm-gcc.tdragon.net/download

2、Go编译环境配置

  安装 TDM-GCC,程序会自动设置PATH环境变量,如果没有设置成功请手动设置。

  安装Go,安装完后需要设置GOROOT,GOPATH,GOBIN,PATH环境变量,

  其中  

  GOROOT为你的Go安装跟目录

  GOPATH为你go程序开发目录,go get后的包也会下载到该目录。

  GOBIN为你的go运行目录,运行 go install 命令后,程序会被安装到该目录。

  PATH为你Go程序根目录,用于能够通过控制台调用go命令。

3、配置交叉编译环境

  在Go根目录下的src目录,新建一个build.bat文件,并复制内容如下:
复制代码

set CGO_ENABLED=0
set GOROOT_BOOTSTRAP=C:/Go
::x86块
set GOARCH=386
set GOOS=windows
call make.bat --no-clean
 
set GOOS=linux
call make.bat --no-clean
 
set GOOS=freebsd
call make.bat --no-clean
 
set GOOS=darwin
call make.bat --no-clean
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
::x64块
set GOARCH=amd64
set GOOS=linux
call make.bat --no-clean
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
::arm块
set GOARCH=arm
set GOOS=linux
call make.bat --no-clean
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 
set GOARCH=386
set GOOS=windows
go get github.com/nsf/gocode
pause

复制代码

  我的Go程序版本是1.6,需要设置GOROOT_BOOTSTRAP变量为Go的安装目录,否则执行时会报错。

  然后运行build.bat,等待结束。

  该程序会编译其他平台编译Go需要的库和编译文件。

  完成后,在cmd命令行下依次执行:

  set GOOS=linux

  set GOPACH=amd64

  go build -o -x APPNAME main.go

  编译后的文件会出现在main.go相应的目录下。

--------------------------------------------------
以上是转贴网友文章,对于我的 go 1.7.3 环境则有些不同.
两点不同:

1.
用的 wxdevcpp_7.4.2_full_setup 自带的 gcc.

2.
最后一个编译命令没有成功,以下命令成功
D:\gopath>go build  gt21.go