Próbuję skompilować krzyżowo aplikację go na OSX, aby zbudować pliki binarne dla systemu Windows i Linux. Przeczytałem wszystko, co mogłem znaleźć w sieci. Najbliższy przykład, jaki znalazłem, został opublikowany (poza wieloma niedokończonymi dyskusjami na liście mailingowej go-nuts):
http://solovyov.net/en/2012/03/09/cross-compiling-go/
jednak nie działa na mojej instalacji. Mam przejść 1.0.2. Ponieważ wersja 1.0.2 jest całkiem nowa, wydaje mi się, że wszystkie powyższe przykłady nie mają zastosowania do tej wersji.
Próbowałem zrobić ./make.bash --no-clean
ze zmiennymi ENV ustawionymi na 386 / windows, kompiluje się, jednak kompiluje się dla mojej instalacji, która jest darwin/amd64
i całkowicie ignoruje to, co jest ustawione w ENV, które zakłada budowanie innego kompilatora.
Jakieś rady, jak to zrobić (jeśli w ogóle można to zrobić)?
sudo
(prawdopodobnie dostałbym inny unix ENV podczas sudo, więc GOOS i GOARCH nie byłyby dostępne, gdyby nie zostały wykonane inline)
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 ./make.bash
- jeśli próbowałeś podzielić go na więcej niż jedną linię, zmienna środowiskowa nie zostanie wyeksportowana, która pasuje do objawów