您好,登錄后才能下訂單哦!
編譯提示
:-1: error: No rule to make target 'wqLineItem.cpp', needed by 'debug/wqLineItem.o'. Stop.
原來這個原因是丟失文件啊 ,終于明白了 ,看來網上的代碼不可信
有個已有的Makefile,執行過程中出錯:
CLi@PC-CLI-1 ~/develop/docbook/books/python_topic_str_encoding/src |
【解決過程】
1.換到別的,和當前文件夾等價的路徑中去執行,結果卻是正常的:
CLi@PC-CLI-1 ~/develop/docbook/books/python_topic_str_encoding/src CLi@PC-CLI-1 ~/develop/docbook/books/python_topic_web_scrape/src …… |
2.后來折騰半天,最后終于發現,原來是由于,當前Makefile中的內容是:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | # also means main source file name PROJECT_NAME = python_topic_str_encoding SUB_SRC_FILES = \ python_topic_str_encoding.xml \ preface.xml \ ch01_2x_vs_3x.xml \ ch02_common_encoding_error.xml \ ch03_other_common_case.xml \ reference.xml \ DOCBOOK_MAKEFILE_ROOT = ../../.. /config ################################################################################ # Include docbook makefile ################################################################################ include $(DOCBOOK_MAKEFILE_ROOT) /docbook .mk |
其中,注意到,所依賴的
reference.xml \ |
后面還有幾個空格的,截圖才能看出來:
導致了此錯誤。
把最后的,多余的空格去掉:
就可以消除此問題了。
【總結】
Makefile在編譯執行過程中,對于所依賴的條件,此處即一堆xml文件,最后一個是reference.xml,結果由于最后reference.xml后面,有多余的4個空格,導致Makefile將該處的4個空格,視為一個文件了,所以,必然找不到該“文件”,所以才報錯的。
所以,如果Makefile出現:
make: *** No rule to make target ` ‘, needed by xxx. Stop.
的錯誤,那么基本上都是屬于找不到所依賴的文件所導致的,所以應該去:
檢測確保,所依賴的文件,是否真實存在。
很可能,很常見的一個現象就是,此處的,誤寫了多余的空格,導致被視為依賴文件,導致找不到,導致報此錯誤。
解決辦法就很簡單,去掉多余的空格即可。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。