[嵌入式系統] Makefile詳解
[嵌入式系統]Makefile詳解 參考資料: http://www.linux.org.tw/CLDP/OLD/doc/makefile-ch1.html http://kunhsien.blogspot.com/2014/04/makefile.html 第一章 - Makefile語法的基本規則: 1.”每一個命令列的開頭都要是一個tab字元(四個空格)”. 2.makefile會忽略描述檔中的空白行且亦會忽略掉#(註解) 3.設定make clean命令列 clean : /bin/rm –f core *.o 意指強制移除.o的檔案 簡單範例第一步:cc -c main.c 編譯main.c程式 進階範例第二步:plot_prompt : basic.o prompt.o //宣告plot_prompt由basic.o與prompt.o兩個檔案組成 cc –o plot_prompt basic.o prompt.o plot_win : basic.o window.o //宣告plot_prompt由basic.o與window.o兩個檔案組成 cc –o plot_win basic.o window.o basic.o : basic.c //宣告basic.o由basic.c產生 cc –c basic.c prompt.o : prompt.c //宣告prompt.o由prompt.c產生 cc –c prompt.c window.o : window.c cc –c window.c 第二章 - (巨集與後置規則): Reference:http://www.linux.org.tw/CLDP/OLD/doc/makefile-ch2.html 1.可用$(name) 或${name}定義巨集 2.描述檔中#代表巨集定義結束並開始註解 3.巨集名稱前不允許有tab字元且等號前也不能有冒號: 4.EXECS = ${SOURCES:.c=} //sources的內容 去掉.c 5.$@ and $?(未完成) 7.>>(未完成) 使用make時加上 –e 這個選項,這