Ich versuche, eine Go-App unter OSX zu kompilieren, um Binärdateien für Windows und Linux zu erstellen. Ich habe alles gelesen, was ich im Internet finden konnte. Das nächste Beispiel, das ich gefunden habe, wurde veröffentlicht (abgesehen von vielen unvollendeten Diskussionen auf der Go-Nuts-Mailingliste):
http://solovyov.net/de/2012/03/09/cross-compiling-go/
Bei meiner Installation funktioniert es jedoch nicht. Ich bin 1.0.2 gegangen. Da 1.0.2 ziemlich neu ist, scheint es mir, dass alle obigen Beispiele nicht für diese Version gelten.
Es wurde versucht, ./make.bash --no-clean
mit ENV-Variablen zu tun, die auf 386 / Windows eingestellt sind, aber es wird für meine Installation erstellt, wobei die darwin/amd64
in ENV festgelegten Einstellungen, die davon ausgehen, dass ein anderer Compiler erstellt wird, vollständig ignoriert werden.
Irgendwelche Ratschläge, wie es gemacht werden kann (wenn es überhaupt gemacht werden kann)?
sudo
durcharbeite, frage ich mich, warum ENV-Vars keine korrekte Kompilierung ausgelöst haben - vielleicht weil ich es getan habe (wahrscheinlich würde ich beim Sudoing ein anderes Unix-ENV erhalten, sodass GOOS & GOARCH nicht verfügbar wären, wenn sie nicht ausgeführt würden inline)
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 ./make.bash
- Wenn Sie versucht haben, es auf mehr als eine Zeile aufzuteilen, wird die Umgebungsvariable nicht exportiert, was den Symptomen entspricht