makefile語法示例

2021-06-17 20:39:15 字數 1646 閱讀 1247

####################################

edit : main.o kbd.o

cc -o edit main.o kdb.o

main.o : main.c defs.h

cc -c main.c

kbd.o : kbd.c defs.h command.h

cc -c kbd.c

clean:

rm *.o edit

########

makefile中使用變數:

objects = main.o kbd.o

edit : &(objects )

cc -c main.c

main.o : main.c defs.h

cc -c main.c

kbd.o : kbd.c defs.h command.h

cc -c kbd.c

clean:

rm objects edit

如果有新的.o

檔案加入,我們只需要簡單滴修改一下

objects

變數就可以了。

當然,你可以使用別的檔名來書寫makefile

,比如:「

make.linux

」,「make.solaris

」,「make.aix

」等,如果要指定特定的

makefile

,你可以使用

make

的「-f

」和「--file

」引數,如:

make -f make.linux

或make --file make.aix。

波浪號(「

~」)字元在檔名中也有比較特殊的用途。如果是「

~/test

」,這就表示當前使用者的

$home

目錄下的

test

目錄。而「

~hchen/test

」則表示使用者

hchen

的宿主目錄下的

test

目錄。

makefile檔案中的特殊變數「

vpath

」就是完成檔案搜尋功能的,如果沒有指明這個變數,make

只會在當前的目錄中去找尋依賴檔案和目標檔案。如果定義了這個變數,那麼,

make

就會在當當前目錄找不到的情況下,到所指定的目錄中去找尋檔案了。

vpath = src:../headers

上面的的定義指定兩個目錄,「src

」和「../headers

」,make

會按照這個順序進行搜尋。目錄由「冒號」分隔。(當然,當前目錄永遠是最高優先搜尋的地方)

Makefile語法和使用示例

make命令格式 makefile中的變數 編寫多檔案程式設計的makefile 使用autotools生成包含多檔案的makefile 目標 依賴檔案列表 命令列表 首先寫乙個main.h,如下 define pi 3.14在同目錄下,再寫乙個main.c,如下 include include m...

Makefile示例學習

裸機程式中的makefile是把程式的編譯和鏈結過程分開的,編譯要使用編譯器gcc,鏈結使用鏈結器ld 示例 led.bin start.o arm linux ld ttext 0x0 o led.elf arm linux objcopy o binary led.elf led.bin arm...

makefile語法 Makefile的語法

假如乙個目標檔案所依賴的依賴檔案很多,我們豈不是要寫很多規則?這顯然不合乎常理。我們可以使用萬用字元解決這些問題。我們對上節程式進行修改 如下 test a.o b.o gcc o test o c gcc c o o 表示所用的.o檔案 c 表示所有的.c檔案 表示目標 表示所有依賴檔案 在該目錄...