日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

c 远程编辑linux文件,makefile - 在远程Linux机器上编译C ++ - “检测到时钟偏差”警告...

發布時間:2023/11/27 生活经验 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c 远程编辑linux文件,makefile - 在远程Linux机器上编译C ++ - “检测到时钟偏差”警告... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

makefile - 在遠程Linux機器上編譯C ++ - “檢測到時鐘偏差”警告

我通過PuTTY和WinSCP連接到我大學的小型Linux集群,使用后者傳輸文件,并使用前者編譯和運行它們。 到目前為止,我的工作已在大學的實驗室進行,但今天我在家里做了一些工作,產生了一個有趣的警告。

我上傳了一個完整的文件夾,在運行make命令后,我將其作為最后一行輸出:

make:warning:檢測到時鐘偏斜。 您的構建可能不完整。

生成的二進制文件正常工作,并且在構建過程中似乎沒有任何其他意外錯誤。

我似乎能夠在上傳一些新的/替換文件之后通過構建來觸發錯誤(我在本地編輯所有內容然后上傳新版本),所以我想知道它是否像文件修改時間不匹配一樣簡單? 還是更關心的事情?

那么,我應該擔心嗎? 我該如何修復/防止這種情況?

DMA57361 asked 2019-05-06T01:42:07Z

12個解決方案

180 votes

該消息通常表示您的某些文件的修改時間晚于當前系統時間。 由于make在執行增量構建時通過檢查源文件是否比其目標文件更新來修改來決定編譯哪些文件,因此這種情況可能導致構建不必要的文件,或者更糟糕的是,不構建必需的文件。

但是,如果您從頭開始構建(不進行增量構建),您可能會忽略此警告而不會產生任何后果。

Tyler McHenry answered 2019-05-06T01:42:30Z

51 votes

通常,這會在NFS安裝目錄中構建時發生,并且客戶端和NFS服務器上的時鐘不同步。

解決方案是在NFS服務器和所有客戶端上運行NTP客戶端。

janneb answered 2019-05-06T01:43:00Z

18 votes

安裝網絡時間協議

在服務器上的Samba SMB CIFS共享上運行ntp時,這也發生在我身上。持久解決方案包括在服務器和客戶端上安裝ntpdate守護程序。(請注意,運行ntpdate無法解決此問題。這只能暫時解決時間差異,但將來不會解決。)

對于Ubuntu和Debian派生的系統,只需在命令行鍵入以下行:

$ sudo apt-get install ntp

此外,仍然需要在受影響的目錄中發出一次(并且僅一次)命令ntp以一勞永逸地更正文件修改時間。

$ touch *

有關ntp和ntpdate之間差異的更多信息,請參閱:

與NTP進行時間同步

如何在Ubuntu 16.04上設置時間同步

Serge Stroobandt answered 2019-05-06T01:44:07Z

10 votes

簡單解決方案

# touch filename

會做的都行。

欲了解更多信息:[http://embeddedbuzz.blogspot.in/2012/03/make-warning-clock-skew-detected-your.html]

Brijesh Valera answered 2019-05-06T01:44:40Z

6 votes

根據LinuxQuestions.org上的用戶m9dhatter:

“make”使用文件的時間戳來確定文件是否存在?? 它試圖編譯是舊的還是新的。 如果你的時鐘被刻錄,它可能會有問題編譯。

如果你嘗試在時鐘前幾分鐘修改另一臺機器上的文件并將它們傳輸到你的機器然后嘗試編譯它可能會發出一個警告,說明該文件是從未來修改過來的。 時鐘可能會扭曲或有什么影響(不能忘記)。 你可能只是對違規文件這樣做:

#touch<違規文件的文件名>

z - answered 2019-05-06T01:45:26Z

6 votes

這里的其他答案很好地解釋了這個問題,所以我在此不再重復。 但有一個解決方案可以解決它尚未列出:只需運行make clean,然后重新運行make。

刪除任何已經編譯的文件將阻止make有任何文件來比較解決警告的時間戳。

skrrgwasme answered 2019-05-06T01:45:59Z

3 votes

我過去曾經有這個 - 因為機器上有時鐘。 考慮設置NTP,以便所有計算機都具有相同的時間。

Ed Heal answered 2019-05-06T01:46:24Z

2 votes

這通常只是由于主機和客戶端計算機之間的時間不匹配。 您可以嘗試使用ntp同步計算機上的時間。

Soo Wei Tan answered 2019-05-06T01:46:49Z

1 votes

解決方案是運行NTP客戶端,只需運行如下命令即可

#ntpdate 172.16.12.100

172.16.12.100是ntp服務器

Surjit answered 2019-05-06T01:47:21Z

0 votes

檢查匯編的結果,例如 somefile.o比源文件舊,例如somefile.c。 上面的警告意味著有關文件時間戳的內容很奇怪。 大學服務器的系統時鐘可能與您的時鐘不同,例如 在下午1點推送一個文件,修改日期是下午2點。 您可以通過鍵入日期在控制臺上查看時間。

fschmitt answered 2019-05-06T01:47:47Z

0 votes

更換計算機中的手表電池。 當看到主板上的硬幣電池需要更換時,我看到了這個錯誤信息。

BlushONine answered 2019-05-06T01:48:12Z

-3 votes

這發生在我身上。 這是因為我跑了make -j 4并且一些工作無法完成。 使用-j選項時,應該會出現此警告。

kilojoules answered 2019-05-06T01:48:38Z

總結

以上是生活随笔為你收集整理的c 远程编辑linux文件,makefile - 在远程Linux机器上编译C ++ - “检测到时钟偏差”警告...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。