0Pricing
Zig Academy · Урок

Параметры и флаги сборки

Настраивайте сборки из командной строки.

«Параметры и флаги сборки» — бесплатный урок Zig Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Zig Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Zig Academy содержит 4 уроков всего.

Настройка из CLI

Хорошая сборка адаптируется без изменений в коде. Zig позволяет открыть пользователям параметры, которые они задают в командной строке во время сборки. ⚙️

Флаг оптимизации

Поскольку Вы использовали standardOptimizeOption, пользователи передают -Doptimize, чтобы выбрать режим, например -Doptimize=ReleaseFast для быстрой сборки.

zig build -Doptimize=ReleaseFast

Флаг цели

Аналогично standardTargetOptions считывает -Dtarget, поэтому Вы можете одной командой собрать программу для другой платформы на своём компьютере.

zig build -Dtarget=x86_64-linux

Определите собственный параметр

Добавьте собственный флаг с помощью b.option. Укажите тип, имя флага и справочное описание для пользователей.

const verbose = b.option(bool, "verbose", "Log extra output");

Параметры необязательны

b.option возвращает необязательное значение: null, если пользователь его не передал. Используйте orelse, чтобы задать разумное значение по умолчанию.

const v = verbose orelse false;

Передайте его через CLI

Пользователь задаёт логический параметр по имени. Поэтому -Dverbose=true включает его, а при отсутствии флага сохраняется значение по умолчанию.

zig build -Dverbose=true

Множество типов значений

Параметры бывают не только логическими. Можно объявлять целые числа, строки или перечисления, а Zig сам разбирает и проверяет значение.

const n = b.option(u32, "threads", "Worker count");

Передайте параметры в код

Чтобы передать параметры в программу, создайте модуль параметров с помощью b.addOptions и добавьте поля, которые исходный код сможет прочитать во время компиляции.

const opts = b.addOptions();

Добавьте константу времени компиляции

Поместите значение в этот модуль с помощью addOption, задав имя константы, которую код будет импортировать и читать.

opts.addOption(bool, "verbose", v);

Импортируйте параметры в исходный код

Откройте модуль для артефакта с помощью addOptions, а затем импортируйте его в коде по имени с помощью import, чтобы читать эти константы.

const config = @import("config");

Найдите все флаги

Каждый объявленный Вами параметр появляется в zig build --help вместе с описанием, поэтому пользователи узнают, как настроить сборку. ✅

zig build --help

Быстрая проверка

Вспомните вид командной строки для собственного параметра сборки.

Повторение

Вы настроили сборки с помощью флагов: встроенных -Doptimize и -Dtarget, значений b.option и addOptions для передачи констант в код. 🎯

Часто задаваемые вопросы

Урок «Параметры и флаги сборки» бесплатный?

Да — полный текст урока «Параметры и флаги сборки» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Zig Academy, подпишись на CoddyKit PRO. Курс Zig Academy содержит 4 уроков всего.

Чему я научусь в уроке «Параметры и флаги сборки»?

Настраивайте сборки из командной строки. Ты практикуешь Zig Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Zig Academy?

Предыдущий опыт не требуется. Zig Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Параметры и флаги сборки»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Zig Academy?

Да. Каждый урок Zig Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Анатомия файла build.zig
  2. Объявление исполняемых файлов и библиотек
  3. Этапы сборки и zig build run
  4. Параметры и флаги сборки
← Назад к Zig Academy