我想知道的是如何编写一个 makefile 来编译程序,然后仅使用命令“make”删除在进程中创建的目标文件,这样我就不必在之后运行命令“make clean”。这是我当前的 makefile:
prog: prog.o prog_func.o
gcc prog.o prog_func.o -o prog -Wall -std=c99
prog.o: prog.c prog_func.h
gcc prog.c -c -Wall -std=c99
prog_func.o: prog_func.c prog_func.h
gcc prog_func.c -c -Wall -std=c99
clean:
rm prog.o prog_func.o
编辑:
这是如何完成的:
prog: prog.o prog_func.o
gcc prog.o prog_func.o -o prog -Wall -std=c99
rm prog.o prog_func.o
prog.o: prog.c prog_func.h
gcc prog.c -c -Wall -std=c99
prog_func.o: prog_func.c prog_func.h
gcc prog_func.c -c -Wall -std=c99
现在可以了。感谢您的快速回复。
最佳答案
构建可执行文件后,只需在可执行命令后给出相同的命令(rm命令)即可
关于c - 使用 makefile 编译时,如何在不使用命令 'make clean' 的情况下清理目标文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26776140/