windows平台下使用LiteIDE交叉编译golang

来源:互联网 发布:java文件阅读器下载 编辑:程序博客网 时间:2024/05/18 03:43
摘要: 在Windows平台使用LiteIDE编译golang程序为*.exe可执行文件,但是我们有时候需要编译linux下可执行的程序怎么办,我们在LiteIDE下加载跨编译选项,编译报错go build runtime: linux/amd64 must be bootstrapped using make.bat,我们如何解决这个问题呢?

1,在windows环境下使用交叉编译,需要编译工具GCC,必须使用MinGW:

http://sourceforge.net/projects/mingw/files/Installer/mingw-get-inst/mingw-get-inst-20120426/mingw-get-inst-20120426.exe/download

安装完成后运行MinGW Installation Mannger

选择安装mingw32-ggc-g++

安装完成后设置环境变量,系统环境变量PATH中靠前的位置添加C:\MinGW\bin(安装目录)

注:如果出现类似这样的错误counld not be located in the dynamic link libintl-8.dll,是这个dll冲突了,将所有其他目录libintl-8.dll全部更名,防止冲突,记得编译完之后要改回来不然影响其他程序正常运行,如下:

2,在golang(当前版本go 1.3.3)安装目录下C:\Go\src目录下新建cc.bat文件(名字任取),内容如下:

set CGO_ENABLED=0:::::::::::::::::::::x86:::::::::::::::::::::::::::::::::::::::set GOARCH=386set GOOS=windowscall make.bat --no-clean set GOOS=linuxcall make.bat --no-clean ::set GOOS=freebsd::call make.bat --no-clean ::set GOOS=darwin::call make.bat --no-clean:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::x64:::::::::::::::::::::::::::::::::::::::set GOARCH=amd64set GOOS=linuxcall make.bat --no-clean::set GOOS=freebsd::call make.bat --no-clean ::set GOOS=darwin::call make.bat --no-clean:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::arm::::::::::::::::::::::::::::::::::::::::set GOARCH=arm::set GOOS=linux::call make.bat --no-clean:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: ::::::::::::::::::::::install gocode::::::::::::::::::::::::::::set GOARCH=386set GOOS=windowsgo get github.com/nsf/gocodepause

完了之后,双击运行批处理文件,一个漫长的编译过程,没有报错的话那么就恭喜你成功了:)

(查看bin目录和pkg目录是否有相关平台的执行文件和包生成)

3,打开LiteIDE x24选择编译linux可执行文件(上面的批处理文件并不是所有的平台都编译了,可执行增加)

然后编译程序,在源文件目录下发现linux可执行文件已经成功生成了!

0 0
原创粉丝点击