ビルドオプションとフラグ
コマンドラインからビルドを設定します。
「ビルドオプションとフラグ」はCoddyKit上の無料Zig Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはZig Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Zig Academyコースには全4レッスンが含まれています。
CLIから設定する
優れたビルドは、コードを編集せずに状況へ対応できます。Zigでは、ユーザーがビルド時にコマンドラインで設定できるオプションを公開できます。⚙️
最適化フラグ
standardOptimizeOptionを使っているため、ユーザーは-Doptimizeでモードを選べます。たとえば-Doptimize=ReleaseFastなら高速ビルドになります。
zig build -Doptimize=ReleaseFastターゲットフラグ
同様にstandardTargetOptionsは-Dtargetを読み取るため、自分のマシンから別のプラットフォーム向けに1つのコマンドでビルドできます。
zig build -Dtarget=x86_64-linux独自のオプションを定義する
b.optionでカスタムフラグを追加します。型、フラグ名、ユーザー向けの説明を指定します。
const verbose = b.option(bool, "verbose", "Log extra output");オプションは省略可能です
b.optionはoptionalを返します。ユーザーが指定しなかった場合はnullです。orelseを使って妥当なデフォルト値を設定します。
const v = verbose orelse false;CLIで渡す
ユーザーは名前でブール型オプションを設定します。そのため、-Dverbose=trueで有効になり、指定しなければデフォルトのままです。
zig build -Dverbose=trueさまざまな値の型
オプションはブール値だけではありません。整数、文字列、enumも宣言でき、値の解析と検証は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時間対応のAIチューター)、Zig Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Zig Academyコースには全4レッスンが含まれています。
「ビルドオプションとフラグ」で何を学びますか?
コマンドラインからビルドを設定します。 ブラウザで直接実行するハンズオンコードでZig Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Zig Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのZig Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「ビルドオプションとフラグ」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このZig Academyレッスンでコードを書いて実行できますか?
はい。すべてのZig Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。