【发布时间】:2012-08-25 00:03:33
【问题描述】:
我编译了一个大项目: 我运行了一个编译,它因“未完成的作业”错误而失败 当我 make clean /clobber 它在另一个地方失败并出现同样的错误?
编译时 clean 和 clobber 有什么区别? 以及如何解决上述寒冷的问题?
【问题讨论】:
标签: c++ compilation
我编译了一个大项目: 我运行了一个编译,它因“未完成的作业”错误而失败 当我 make clean /clobber 它在另一个地方失败并出现同样的错误?
编译时 clean 和 clobber 有什么区别? 以及如何解决上述寒冷的问题?
【问题讨论】:
标签: c++ compilation
Keith 是对的,clean 和 clobber 可以表示 makefile 的作者想要的任何内容。
在实践中,虽然我认为通常两者之间的区别是这样的:
clean:删除所有创建的目标文件clobber: 删除所有目标文件和生成的指定cpp文件依赖关系的中间依赖文件。至少在我参与的项目中是这样的。
【讨论】:
我想你是说你运行命令
make clean
或
make clobber
这些是在您的Makefile 中指定的目标。它们的含义取决于 Makefile 所说的内容;它们不是预定义的。通常,它们都会删除编译时生成的文件(可执行文件、目标文件)。 clean 和 clobber 之间的差异(如果有的话)取决于 Makefile 的作者的心血来潮。
【讨论】: