我试着在我的Linux桌面上编译一个go程序(Linux桌面4.10.0-28-generic #32-Ubuntu SMP Fri Jun 30 05:32:18UTC 2017 x86_64 GNU/Linux),go version go version go1.8.3 linux/amd64 to arm:
$ GOPATH=/home/xrfang/git/hermes/ GOARM=7 GOARCH=arm go build .生成可执行文件,但似乎不是ARMv7:
$ file hermes
hermes: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, not stripped它显示EABI5。如何交叉编译为ARMv7?我的Linux桌面上是否缺少任何东西,从而使交叉编译回退到较低的ARM版本?
谢谢。
发布于 2017-08-23 21:09:22
我相信,它不是ARMv5。我在MAC操作系统上也是这样做的,在Mac上的'file‘命令是v7,但是在Linux上的'file’命令不是这样的,然而,我知道v7有一些很好的改进,可能会提高你的程序的性能。
但是,这超出了这个问题的范围,您可能需要更深入地挖掘您正在做的事情以及为什么期望性能提高。我能说的就是,它是为v7编译的。
https://stackoverflow.com/questions/45835134
复制相似问题