我有一个 Makefile 如下:
work/step1.tab: temp.tab hcp_raw_data_sample.tab
command
work/step2.tab: work/step1.tab
command
我在主目录中有 temp.tab
和 hcp_raw_data_sample.tab
并且想要 step1.tab
和 step2.tab
将在 work
目录中创建。但是,只有 step1.tab
被创建; step2.tab
没有。我该怎么办?
最佳答案
当您运行 make
时,它会构建 makefile 中列出的第一个目标,在本例中为 work/step1.tab
。它看不到任何构建 step2.tab 的理由,因为它具有构建 step1 所需的一切,这是默认目标。
要让它构建两者,请将 work/step2.tab
移动到 work/step1.tab
之上。这使得 work/step2.tab
成为默认目标。
这样它会看到它需要构建work/step1.tab
才能构建work/step2.tab
,所以它会这样做,然后它将构建 work/step2.tab
。
关于linux - Makefile 只创建第一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24614575/