[英]Makefile.am: How to Add rule for new extension?
我正在嘗試修改現有的makefile.am以包含將* .rc擴展名轉換為資源文件的規則。 這是我目前所能得到的。
mytarget_SOURCES += ico.rc
.rc.o:
windres -i $< $@
如下所述: http ://www.gnu.org/software/automake/manual/html_node/Suffixes.html在生成的makefile中,ico.rc被添加到源中,ico.o被添加到對象中(所以這很好我猜)。
在makefile的末尾,這個.rc.o規則是字面上的粘貼,但我懷疑應該是這樣,對吧? .rc.o應該是一個自動規則,但它不是創建ico.o文件的好規則,是嗎?
當make運行時,它會重新生成makefile,然后繼續抱怨沒有規則來制作ico.o. windres,或者我放在那里的任何東西(例如回聲)永遠不會運行。 我試過谷歌搜索,但信息很少,而且我能找到的大多數都是我上面給出的鏈接的副本。 我究竟做錯了什么?
Automake只是簡單地將生成的Makefile復制到生成的Makefile中。 因此,只要您編寫的是有效的makefile語法,就沒問題。
你所擁有的是make中有效的隱式后綴規則的一部分 。 但是,您缺少需要將.rc
定義為有效后綴( .o
是內置后綴列表的一部分,因此您不必添加它,除非您只是想完成)。
將它添加到Makefile.am中:
.SUFFIXES: .rc
有關詳細信息,請參閱http://www.gnu.org/software/make/manual/html_node/Suffix-Rules.html 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.