💬Представьте, что вам необходимо внедрить информацию о версии и другие метаданные в ваше Go-приложение во время сборки, не изменяя исходный код. Как это реализовать?
📌Мы можем использовать флаг
📌Простые юзкейсы:
◆ Установка значения переменной: мы можем установить значение переменной во время компиляции. Например,
◆ Уменьшение размера бинарного файла: использование
👉 Подробнее
📌Мы можем использовать флаг
-ldflags
, который позволяет управлять поведением компоновщика при сборке Go-программ. Он позволяет определять опции сборки на этапе компиляции. 📌Простые юзкейсы:
◆ Установка значения переменной: мы можем установить значение переменной во время компиляции. Например,
go build -ldflags "-X main.version=1.0.0"
устанавливает переменную version в пакете main в значение 1.0.0.◆ Уменьшение размера бинарного файла: использование
go build -ldflags "-w -s"
позволяет уменьшить размер исполняемого файла, отключая отладочную информацию и символы таблицы.👉 Подробнее