【问题标题】:GNU make rule for multiple input files?GNU为多个输入文件制定规则?
【发布时间】:2021-03-01 14:25:45
【问题描述】:

我有一个 GNU make 变量,其中包含多个音频文件:

FILEWAV += $(wildcard $(DIRIN)/*.wav)

我需要使用 SoX 将 wavs 转换为 f32 文件:

sox -channels 1 --rate 48000 $(FILEWAV) --type raw $(FILEWAV:.wav=.f32)

如何编写一个 makefile 目标来一一转换所有文件?

【问题讨论】:

  • 您是否阅读过 Make 文档? pattern rules 部分可能特别有趣。
  • 如果您向我们展示您尝试编写的 makefile 并提供一些错误消息或解释它如何不起作用,我们可以在您的 makefile 中解释错误。

标签: makefile gnu-make


【解决方案1】:

这行得通:

%.f32: %.wav
    sox --channels 1 --encoding signed-integer --rate 48000 $< --type raw $@


run: $(MY_FILES_F32) $(MY_OTHER_FILES_F32)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多