我目前正在研究一个关于学生工作的项目并编写一些代码。每当我想编译我的文件时,我的主管告诉我先做gmake clean
然后做gmake
。否则,新鲜的gmake可能无法解决之前gmake的一些错误。
我的项目有很多不需要的文件,我没有编辑,但每次都是gmake clean
,编译器每次都会再次编译它们,这需要花费很多时间。
所以,如果我没有更改其他文件,那么我不需要重新编译它们,我改变的唯一文件总是只用gmake
重新编译,对吧?那我为什么每次gmake clean
?
我的主管是否只是告诉我良好的编程习惯,还是我错过了gmake clean
的一些重要概念?
答案 0 :(得分:2)
绝对不是最佳做法...当makefile包含一些错误且依赖性不正确时,这通常是快速而肮脏的解决方案
答案 1 :(得分:2)
gmake
和gmake clean
之间的区别在于前者构建默认目标,而后者“构建”特定目标clean
,后者通常包含要删除的清除指令在构建过程中创建的文件(目标文件,临时文件,生成的代码......)。 gmake clean
应将源树恢复到干净状态。但是,如果它实际上成功取决于源树的外观以及目标包含的指令。
答案 2 :(得分:0)
gmake clean
之前执行gmake
。只是为了检查问题是否来自旧的编译文件。
otherise只在gmake
中编译您最新更改的文件。
你上司给你一个处理困难和奇怪的编译行为的建议。