2011-01-06 39 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)) 

其中甩了一個空字符串。在這一點上,它只是一些仔細的眯着眼:)