簡體   English   中英

如何將我的Go程序從Mac OS X交叉編譯為Ubuntu 64位

[英]How do I cross compile my Go program from Mac OS X to Ubuntu 64-bit

正如標題所說,我想知道如何交叉編譯我的程序,以便我可以在Ubuntu 64位上運行它

我已經進入/usr/local/go/src文件夾並運行了

GOOS=linux GOARCH=amd64 ./make.bash --no-clean

一切都編好了

然后進入我的項目目錄並運行go build -v -a然后獲取已編譯的二進制文件並將其移動到我的linux服務器,但在運行它時我收到此錯誤:

root@PanicCSGO40:~/test# ./test
-bash: ./test: cannot execute binary file: Exec format error
root@PanicCSGO40:~/test# sudo ./test
./test: 1: ./test: Syntax error: "(" unexpected
root@PanicCSGO40:~/test#

不知道我做錯了什么信息會非常感謝。

我也試過GOARCH=386但仍然得到相同的錯誤。 謝謝!

這個鏈接並沒有解決我的問題,因為選擇的答案是一個博客帖子的鏈接,該帖子嚴重依賴於使用博客作者bash腳本進行所有交叉編譯,我只是想知道正確的做法是什么它是,現在我做。

build命令需要標識目標環境:

$ GOOS=linux GOARCH=amd64 go build -v /path/to/target/package

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM