「警告ファイル 'CMakeFilesxxxxxx.dirprogress.make' の変更時間は 2.4 秒先です」というプロンプトを解決する方法

問題の説明:

今日は、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 であるためです。

解決:

したがって、解決策は 2 つあります。
①: 仮想マシンがネットワークから切断されている場合は、仮想マシンのシステム時刻を、ファイルが書き込まれるシステム時刻より少し遅くなるように変更します。
②: 仮想マシンがインターネットに接続されている場合 (またはコンパイル環境がインターネットに接続されている場合)、ファイルまたはコンパイラの時刻がインターネット タイム サーバーと同期していれば、基本的にこのような問題は発生しません。

実際、この問題のほとんどは、ファイルが複数のシステム間で行き来して変更されるために発生しますが、同じシステム上でコンパイルと変更が行われた場合、基本的にこのような警告プロンプトは表示されません。

さて、今日の共有はここまでです。

私のレベルは限られており、上記の情報は学習の参考のみです。間違いや不適切な点があれば、ご指摘ください。
また、作成するのは簡単ではありませんので、盗作しないでください。皆さんに役立つ場合は、気に入って収集していただければ幸いです、ありがとうございます~

おすすめ

転載: blog.csdn.net/OMGMac/article/details/130040927