正如标题所说,我想知道如何交叉编译我的程序,以便我可以在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#
Run Code Online (Sandbox Code Playgroud)
不知道我做错了什么信息会非常感谢.
我也试过这样做,GOARCH=386但仍然得到同样的错误.谢谢!
这个链接并没有解决我的问题,因为所选的答案是一个博客帖子的链接,该帖子严重依赖于使用博客编写者bash脚本进行所有交叉编译,我只是想知道正确的方法是什么过去了,现在我做了.
Sno*_*lem 64
build命令需要标识目标环境:
$ GOOS=linux GOARCH=amd64 go build -v /path/to/target/package
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12200 次 |
| 最近记录: |