Ich versuche, ein Go-Programm auf meinem Linux-Desktop zu kompilieren (Linux-Desktop 4.10.0-28-generische # 32-Ubuntu SMP Fr. 30 Juni 05:32:18 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux), gehen Version go version go1.8.3 linux/amd64
zu bewaffnen:Cross-kompilieren zu ARMv7 fehlgeschlagen
$ GOPATH=/home/xrfang/git/hermes/ GOARM=7 GOARCH=arm go build .
die ausführbare Datei erzeugt wird, scheint aber nicht ARMv7:
$ file hermes
hermes: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically linked, not stripped
Es zeigt EABI5. Wie kann ich ARMv7 kompilieren? Fehlt etwas auf meinem Linux-Desktop, so dass das Cross-Compile auf eine niedrigere ARM-Version zurückfällt?
Danke.
Wie können Sie sagen, es ist nicht für V7 von EABI5 kompiliert? – RaviTezu
@RaviTezu, es tut mir leid, ich dachte EABI5 ARMv5 ?? Wenn nicht, wie kann ich es sagen? Der Grund, warum ich nachforsche, ist, dass ich mit GOARM = 7 keine Leistungsverbesserung erreicht habe. Mein Programm läuft auf einem Android-Rechner, ruft screencap auf, um einen Screenshot im RGBA8888-Rohformat zu machen, und komprimiert es dann in JPEG. Kann ich eine Leistungssteigerung durch Verwendung von ARMv7 erwarten, insbesondere für den JPEG-Codierungsteil? – xrfang