Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
For loop 用于GNU make中的循环名称_For Loop_Makefile - Fatal编程技术网

For loop 用于GNU make中的循环名称

For loop 用于GNU make中的循环名称,for-loop,makefile,For Loop,Makefile,我有一堆.dot文件(例如,a.dot、b.dot、c.dot),我想用neato将它们编译成.png文件。目前,我必须执行的make命令如下所示: neato -Tpng -o a.png a.dot neato -Tpng -o b.png b.dot neato -Tpng -o c.png c.dot 显然,这是完全不可伸缩的,我想写一些东西,将每个扩展名为.dot的文件编译成一个同名的.png文件。我不知道如何在make中编写这样一个循环-如果有任何帮助,我将不胜感激。这是基本的ma

我有一堆.dot文件(例如,
a.dot、b.dot、c.dot
),我想用
neato
将它们编译成.png文件。目前,我必须执行的make命令如下所示:

neato -Tpng -o a.png a.dot
neato -Tpng -o b.png b.dot
neato -Tpng -o c.png c.dot

显然,这是完全不可伸缩的,我想写一些东西,将每个扩展名为.dot的文件编译成一个同名的.png文件。我不知道如何在make中编写这样一个循环-如果有任何帮助,我将不胜感激。

这是基本的make 101:

SRCS = a.dot b.dot c.dot

OBJS = $(SRCS:%.dot=%.png)

all: $(OBJS)

%.png : %.dot
        neato -Tpng -o $@ $<
SRCS=a.dot b.dot c.dot
OBJS=$(SRCS:%.dot=%.png)
全部:$(OBJS)
%.png:%.dot
neato-Tpng-o$@$<

你不会在make中做“循环”;您可以定义目标和先决条件。

哪个“品牌”?这可能会有帮助:编辑以告诉您我的意思是哪个品牌。我们可以使用
$您不需要循环,您需要规则。