среда, 2 ноября 2016 г.

golang crossplatform compilation

Я понемногу, когда доходят руки переписываю разные системные утилиты с перлов и питонов на golang.

Конечно ж не специально, то что не сломано я не чиню почти никогда.

Но если работа требует внести изменения в скрипт. то скорее всего я его перепишу на go.

У меня до сих пор довольно много зоопарка в продакшене, включая фряхи всех видов и сортов.

Это останавливало меня от переписывания ряда скриптов, ибо еще полгода назад хорошего способа кросплаформенной сборки не было, а собирать на рабочих серверах не моя страсть.

И случайно сегодня решил проверить не исправлено ли там эта проблема, ибо уж пара-тройка релизов go была, может добрались динамичные парни.

И конечно ж, теперь работает, причем работает, ну жесть как просто.
env GOOS=freebsd GOARCH=amd64 go build -v
и вперед.
Потестировал уже у себя в разных вариантах и где собирать и для чего собирать.

Просто супер,  еще целую пачку скриптов смогу при желании заменить.


Больше подробностей есть по этой ссылке http://dave.cheney.net/2015/08/22/cross-compilation-with-go-1-5