移植Qt程序时,在目标电脑上使用QtCreator编译程序出现该错误,原因是某些文件修改日期与系统当前日期不一致,导致编译时需要等待倒计时结束,如果时间短等等还行,但是像我这个需要将近八小时的还是算了吧,既然知道问题所在那就好办多了,查看该文件当前修改日期,stat resources.qrc :
文件:"resources.qrc"
大小:832 块:8 IO 块:4096 普通文件
设备:801h/2049d Inode:4735950 硬链接:1
权限:(0644/-rw-r--r--) Uid:( 1000/loongson) Gid:( 1000/loongson)
最近访问:2019-04-18 15:47:16.836638981 +0800
最近更改:2019-04-18 23:23:02.000000000 +0800
最近改动:2019-04-18 15:24:22.050663313 +0800
创建时间:-
很明显在“最近更改”处时间变为了晚上23:23:02,与“最近访问”和“最近改动”相差了大概八小时,因此在make时会出现“has modification time *** s in the future”错误。
之后使用touch命令更新一下时间即可:touch resources.qrc。该命令的特点是:当文件不存在则创建空文件,文件存在则更新文件时间到系统当前时间,利用这个特性就能很方便的修改文件时间了,修改完时间再编译即能正常通过。