首先创建cau根目录,下面分别创建add,sub,mul,div,include,scripts目录和一个Makefile文件
Makefile文件内容如下:直接vim Makefile即可
1 include scripts/Makefile
2
3 modules_make = $(MAKE) -C $(1);
4 modules_clean = $(MAKE) clean -C $(1);
5
6 .PHONY: all mm mc clean
7
8 all: $(Target)
9
10 mm:
11 @ $(foreach n,$(Modules),$(call modules_make,$(n)))
12 mc:
13 @ $(foreach n,$(Modules),$(call modules_clean,$(n)))
14
15 $(Target) : mm
16 $(CC) $(CFLAGS) -o $(Target) $(AllObjs) $(Libs)
17 @ echo $(Target) make done!
18
19 clean : mc
20 rm -rf $(Target)
21 @ echo clean done!
22
23
24
25
26
~
~
~
add,sub,mul,div,main五个目录下的Makefile内容一样,src中是其各自的源码。
只演示add目录的操作,
add目录下有src目录和Makefile文件,Makefile文件内容如下图,sub,mul,div文件的Makefile文件和add的一样。
1.其中Makefile文件如下:
1 include ../scripts/Makefile
2
3 all : $(Objs)
4
5 clean :
6 rm -rf $(Objs)
7
8
9
2. scr目录下是add.c文件,注意main.c里面要引用头文件:#include“../../include/myhead.h”
这五个文件搞完后回到主目录下
进入include目录,创建头文件myhead.h,头文件内容如下
回到主目录下,进入scripts目录下,vim Makefile 创建Makefile文件,其中Target后面是生成可执行文件的名称,Modules后面是各自源码的目录,
回到主目录,执行make,完成,生成可执行文件cau。
./cau 完成