问题描述:
今天分享一个我自己之前在使用虚拟机中使用cmake进行编译连接时候产生的一个告警提示,首先看告警提示:
Warning: File 'CMakeFiles/xxxxxx.dir/progress.make' has modification time 2.4 s in the future
好像是因为我要编译的文件的时间比系统(服务器端)的时间提前了,所以才会提示在未来。
这里为什么会产生这样的问题呢?因为可能是因为我虚拟机的时间不是跟着系统时间走的,比系统时间迟了一定时间,造成了我在windows下编译好的文件其时间超前了虚拟机的时间,加上我的虚拟机是断网了,所以在进行编译链接时候提示我的文件在未来,编译器会不断的等待,直到系统时间超前了我的文件时间才会进行编译,因此才会不断的倒数和告警:
Warning: File 'CMakeFiles/xxxxxx.dir/progress.make' has modification time 3.5 s in the future
Warning: File 'CMakeFiles/xxxxxx.dir/progress.make' has modification time 2.4 s in the future
如果大家还不理解的话,举个例子:比如我要编译的文件最后修改的时间为13.29,而此时因为编译环境在虚拟机中,我需要在虚拟机中编译,但是虚拟机的系统时间为13.27,这时候编译就会出现一个告警,提示我的文件最后一次修改怎么在未来,就是上述的告警提示。因为你的虚拟机此时时间还在13.27。
解决方法:
所以解决方法就是有两种:
①:如果你的虚拟机是断网使用的,修改你的虚拟机系统时间,比编写文件所在的那个系统时间迟一点即可。
②:如果虚拟机是联网的(或者说你的编译环境是有网的),只要文件或者编译器的时间都是同步互联网时间服务器的,基本上不会有这个问题。
其实大部分出现这个问题,还是因为文件在多个系统之间来回修改造成的,如果在同一个系统下编译和修改,基本上不会出现这种告警提示。
好了,今天的分享就到这里为止了。
本人水平有限,上述信息仅供学习参考,如有错误和不妥之处,请多多指教。
另外创作不易,请勿抄袭,如果有帮助到大家的话希望大家可以点个赞和收藏,谢谢~