簡體   English   中英

Makefile.am:如何為新擴展添加規則?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM