我的目录结构作为的src/OBJ /包括我已经建立2 /斌/的.cpp文件中SRC文件夹和使用既CPP文件头文件包括文件夹。我想创建OBJ文件和二进制目标文件中仓下面文件夹:对象未找到错误使
vpath %.cpp src
vpath %.h include
vpath %.o obj
all : main.o factorial.o run
run : main.o factorial.o
cc $^ -o bin/[email protected] -lstdc++
main.o : main.cpp functions.h
cc -c $< $(inc) -o obj/[email protected] -lstdc++
factorial.o : factorial.cpp functions.h
cc -c $< $(inc) -o obj/[email protected] -lstdc++
clean :
rm -rf bin/* obj/*
并同时使第一时间之后是输出:
[email protected] make-tut]$ make
cc -c src/main.cpp -I include -o obj/main.o -lstdc++
cc -c src/factorial.cpp -I include -o obj/factorial.o -lstdc++
cc main.o factorial.o -o bin/run -lstdc++
cc: main.o: No such file or directory
cc: factorial.o: No such file or directory
make: *** [run] Error 1
[email protected] make-tut]$
如果我运行再次出现没有错误:
[[email protected] make-tut]$ make
cc obj/main.o obj/factorial.o -o bin/run -lstdc++
问题是什么?
**爵士!然后像我必须写run:obj/main.o obj/factorial.o; cc $^-o bin/$ @ -lstdC++;并删除行vpath%.o obj ** –