Windows平台下golang使用LiteIDE實現跨平台編譯
最後更新:2016-01-26
來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。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=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
::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=386
set GOOS=windows
go get github.com/nsf/gocode
pause
完了之後,雙擊運行批次檔,一個漫長的編譯過程,沒有報錯的話那麼就恭喜你成功了:)
(查看bin目錄和pkg目錄是否有相關平台的執行檔案和包產生)
3,開啟LiteIDE x24選擇編譯linux可執行檔(上面的批次檔並不是所有的平台都編譯了,可執行增加)
然後編譯器,在源檔案目錄下發現linux可執行檔已經成功產生了!