2011-01-06 47 views
1

请我需要您的帮助!Makefile错误信息:无事可做

为了得到与照片列表相关的缩略图列表,我已经用下面的Makefile(该项目的目录有2个子目录大拇指和图片)

all: $(patsubst pictures/%.jpg, thumbs/%.jpg, $(wilcard pictures/*.jpg)) 
thumbs/%.jpg: pictures/%.jpg 
    convert -thumbnail 100 $< $* 

的问题是,我始终得到同样的错误信息“没有任何事情要为'all'完成”,就好像没有依赖关系一样。 :( 有没有人对于解释

+0

对不起,我的意思是错误信息,而不是meddae:p – mimou 2011-01-06 23:30:21

+0

我改变了你的标题,但这是你的问题,所以你实际上可以编辑它。 `:`` – 2011-01-06 23:32:39

回答

3

这是一个简单的拼写错误:只需添加缺少的d$(wildcard ...)

制作,当你拨打电话到不支持的功能不会引发错误所以这个函数调用的结果只是一个空字符串,这使得你的all目标没有任何依赖关系,并且你就是这样!

为了将来的参考,我发现这个错误是通过在makefile:

$(info $(patsubst pictures/%.jpg, thumbs/%.jpg, $(wilcard pictures/*.jpg))) 

$(info ...)函数将打印输出到控制台,其可以是非常有用的调试。在这种情况下,它会打印一个空行。为了进一步调试,我尝试这样做:

$(info $(wilcard pictures/*.jpg)) 

其中甩了一个空字符串。在这一点上,它只是一些仔细的眯着眼:)