登录
首页 >  Golang >  Go问答

Golang 二进制文件无法在 MIPS 架构上执行

来源:stackoverflow

时间:2024-03-11 12:18:33 430浏览 收藏

目前golang学习网上已经有很多关于Golang的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《Golang 二进制文件无法在 MIPS 架构上执行》,也希望能帮助到大家,如果阅读完后真的对你学习Golang有帮助,欢迎动动手指,评论留言并分享~

问题内容

我在 Windows 10 上使用 Go 1.11.4,并且想要为运行 Linux 的 MIPS 74Kc 处理器 (Qualcomm Atheros QCA9558) 编译代码。我编译:

GOOS=linux GOARCH=mips go build

获取可执行文件,上传并运行它并获取:

非法指令

再次尝试使用 GOARCH=mipsle 并得到:

./hello_mipsle_linux:第 1 行:语法错误:意外的“(”

我错过了什么?


解决方案


我进行构建的主机有 fpu,但主板没有。添加 gomips=softfloat 修复了它:

goos=linux goarch=mips gomips=softfloat go build

要列出当前构建工具链可用的所有可能的 mips 架构师,请使用 go 工具 例如

$ go version

go version go1.12 darwin/amd64

$ go tool dist list | grep mips

linux/mips
linux/mips64
linux/mips64le
linux/mipsle

所以可能是您尚未尝试过的剩余 goarch 排列之一,例如mips64mips64le

uname -m 将有助于确定目标系统的机器架构。

好了,本文到此结束,带大家了解了《Golang 二进制文件无法在 MIPS 架构上执行》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>