1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【役立ち情報】Zen言語の標準ビルドスクリプトのビルドコマンドを知りたい

Posted at

はじめに

Zen言語の標準ビルドスクリプトのステップを作成中や実行中に、
ビルドスクリプトでビルドが実行されたコマンドを知りたいと思うことってありませんか?

私自身は、ビルドコマンドでは正常に実行バイナリが生成されていたにも関わらず、
何らかの要因でビルドスクリプトでは正常に生成されない時がありました。

そんな時の確認方法の一つとして、
ビルドコマンドを確認できるフラグを用いることで、
ビルドスクリプトの記述ミスを見つけることが出来るのではないでしょうか。

ビルドコマンドを確認できるフラグを立てる

build.zenのbuild(b: *Builder)内に、b.verbose = true;を記述することで確認できます。

const Builder = @import("std").build.Builder;

pub fn build(b: *Builder) void {

    //追加
    b.verbose = true;

    const mode = b.standardReleaseOptions();
    const exe = b.addExecutable("test", "src/main.zen");
    exe.setBuildMode(mode);
    exe.install();

    const run_cmd = exe.run();
    run_cmd.step.dependOn(b.getInstallStep());

    const run_step = b.step("run", "Run the app");
    run_step.dependOn(&run_cmd.step);
}

●フラグを立てた場合に分かる実行コマンドはこちら

「【第二弾】Zen言語の標準ビルドスクリプトを使ってみた」で作成したビルドスクリプトに、フラグを立てた場合の出力結果です。

このフラグを用いることで、
意図した通りのビルドコマンドが実行されていることが確認できました。

[PATH]/wiringPi-zen/src/main.zen --library c --c-source [PATH]/WiringPi/wiringPi/wiringPi.c --c-source [PATH]/wiringPi-zen/WiringPi/wiringPi/piHiPri.c --c-source [PATH]/wiringPi-zen/WiringPi/wiringPi/softTone.c --c-source [PATH]/wiringPi-zen/WiringPi/wiringPi/softPwm.c --cache-dir [PATH]/wiringPi-zen/zen-cache --name wiringPi-zen -target armv7-linux-gnueabihf -I [PATH]/wiringPi-zen/WiringPi/wiringPi --cache on 
cp [PATH]/wiringPi-zen/zen-cache/o/NWohxvs3nYnGUIHADg7W2Sd9tRBACnf4Mck6sPMR7Pv0Py52cbj4XLmeZHdtRwsV/wiringPi-zen ./wiringPi-zen # installed
cp ./wiringPi-zen [PATH]/wiringPi-zen/zen-cache/bin/wiringPi-zen # installed

以上、お役立ち情報でした。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?