💬Представьте, что вам необходимо внедрить информацию о версии и другие метаданные в ваше Go-приложение во время сборки, не изменяя исходный код. Как это реализовать?



📌Мы можем использовать флаг -ldflags, который позволяет управлять поведением компоновщика при сборке Go-программ. Он позволяет определять опции сборки на этапе компиляции.



📌Простые юзкейсы:



Установка значения переменной: мы можем установить значение переменной во время компиляции. Например, go build -ldflags "-X main.version=1.0.0" устанавливает переменную version в пакете main в значение 1.0.0.



Уменьшение размера бинарного файла: использование go build -ldflags "-w -s" позволяет уменьшить размер исполняемого файла, отключая отладочную информацию и символы таблицы.



👉 Подробнее