当前位置: 技术问答>linux和unix
linux 下的makefile问题
来源: 互联网 发布时间:2017-02-17
本文导语: 目录DIR --------------目录A |____________add.c add.h sub.c sub.h Makefile ---------------目录B |____________mul.c mul.h dev.c dev.h Makefile ----------------main.c -----------...
目录DIR
--------------目录A
|____________add.c add.h sub.c sub.h Makefile
---------------目录B
|____________mul.c mul.h dev.c dev.h Makefile
----------------main.c
----------------Makefile
这是大的Makefile
m : main.o add.o sub.o mul.o div.o
gcc $^ -o $@
main.o:main.c ./A/add.h ./A/sub.h ./B/mul.h ./B/div.h
gcc -c main.c -o main.o
add:
cd ../A && $(MAKE)
mul:
cd ../B && $(MAKE)
clean :
rm -r *.o m
这是我写的主目录的makefile》。。。提示错误信息
make: *** No rule to make target `add.o', needed by `m'. Stop.
有什么方法改正
--------------目录A
|____________add.c add.h sub.c sub.h Makefile
---------------目录B
|____________mul.c mul.h dev.c dev.h Makefile
----------------main.c
----------------Makefile
这是大的Makefile
m : main.o add.o sub.o mul.o div.o
gcc $^ -o $@
main.o:main.c ./A/add.h ./A/sub.h ./B/mul.h ./B/div.h
gcc -c main.c -o main.o
add:
cd ../A && $(MAKE)
mul:
cd ../B && $(MAKE)
clean :
rm -r *.o m
这是我写的主目录的makefile》。。。提示错误信息
make: *** No rule to make target `add.o', needed by `m'. Stop.
有什么方法改正
|
目标文件add.o,下面应该也对应
add.o:关联文件
生成语句
我觉得你应该写几个小make,
然后shell脚本一起执行,写个大MAKE 的不懂。。。。
add.o:关联文件
生成语句
我觉得你应该写几个小make,
然后shell脚本一起执行,写个大MAKE 的不懂。。。。