即使是最簡單的程序(例如Blink),其編譯速度也極其緩慢,進度條通常會在半分鐘內掛起一半。
這正常嗎?我了解並非所有計算機的速度都一樣快,但是3秒和30秒之間會有很大的差異
編輯
從報告中可以看出,每次我切換程序它們是完全重新構建的:
構建選項已更改,即使沒有任何更改,也將重新構建所有
。如何避免完全重建?
即使是最簡單的程序(例如Blink),其編譯速度也極其緩慢,進度條通常會在半分鐘內掛起一半。
這正常嗎?我了解並非所有計算機的速度都一樣快,但是3秒和30秒之間會有很大的差異
編輯
從報告中可以看出,每次我切換程序它們是完全重新構建的:
構建選項已更改,即使沒有任何更改,也將重新構建所有
。如何避免完全重建?
我發現這是我的開發機器上的常見問題,但是使用Visual Micro for Visual Studio可以將這段時間減少很多。
我主要將其用於其他Visual Studio功能(如Intellisense) ,重構和解決方案管理。 Visual Micro具有一些引人注目的功能,例如調試工具,但我沒有使用它們。
我還沒有親自嘗試過,但是我希望您可以避免使用Visual Studio中的project / solution選項進行重建-我發現在這種情況下,大多數情況下,編譯時間足夠快,因此無關緊要。
如果發現編譯緩慢,則可以,它可能是重新編譯實際上不需要重新編譯的內容。這一直是Arduino環境的主要失敗,並且是在我的IDE UECIDE中完全重寫整個編譯系統的主要動力之一。
包括非常積極地將已編譯的庫和核心文件緩存為適當的“ .a”文件,這些文件與您的開發板文件分開存儲,並保留到真正需要編譯為止。這樣,您第一次編譯電路板時,可能需要30秒,50秒等時間。同一塊板上的所有後續編譯,即使是不同的草圖(不包括“新”庫的編譯時間),也將在2秒左右,甚至更少。
在運行時,緩存特別重要在非常慢的系統(例如Raspberry Pi)上,如果沒有適當的緩存,則可能需要花費幾分鐘的時間進行編譯,而在隨後的所有編譯過程中,只需花費幾秒鐘的時間。
直到今天我也遇到了同樣的問題。像網絡上的許多答案一樣,問題似乎出在防病毒上。我的設置是帶有SSD的Windows 10 x64,我將Windows Defender用作AV。不會縮短編譯時間。
我檢查了Arduino IDE中的“ verbose”選項,發現它正在從AppData文件夾中調用編譯器。所以我將此文件夾添加到我的AV排除列表中,並且可以正常工作!
編譯時間提高了十倍。
TLDR; 在Windows 10中,添加將%USERPROFILE%\ AppData \ Local \ Arduino15中的文件夾添加到AV排除列表。
如果您使用ESET(至少一個用戶報告它有所幫助),則該線程 Arduino IDE和ESET:緩慢的編譯可能會有所幫助,但自從我使用以來,它並沒有幫助我m使用Comodo(可能還有其他原因)。
這是自2009年以來關於幫助許多用戶的解決方案的另一個主題 SLOW ARDUINO IDE(有關該論壇的日期為2014年。
這裡還有一些有用的帖子,簡單草圖的令人難以置信的緩慢編譯。好的,我還沒有親自測試所有解決方案,但是讓我在這裡收集有用的鏈接,以便其他人可以找到它們,我也將對其進行檢查。
我將下載非安裝版本,然後嘗試在其中編譯眨眼草圖。這將使您知道這是計算機特定問題還是與您的安裝有關的問題。我遇到了類似的情況,庫在兩個版本之間的更新不正確,導致各種錯誤的行為。
“構建選項已更改,全部重建”的發生(如已編輯的問題所述,如屏幕截圖所示)可能會導致較大的延遲。我認為(正確與否)是,當出現此消息時,正在重建許多庫。通常,僅應在初次安裝時或更改目標板類型時才重建庫。
一個 arduino.cc線程,“即使沒有任何更改,“構建選項已更改,全部重建”” ==>非常慢”,從2014年開始淺談這個問題,只是指出Arduino 1.5.8 Beta適用於Yún和Arduino Due開發板,而不是“常規Arduino”開發板。
A 2011 Google代碼線程可能基本上無關緊要,但是值得嘗試第14和15條中提到的一些步驟‒例如,如果您的平台是MS Windows,則通過名稱中沒有空格的路徑啟動arduino。如果Arduino IDE找不到其選項或首選項文件,則可能假定它是從頭開始的。
注意,請編輯問題以指定如何啟動Arduino IDE的運行方式(IDE安裝在您的計算機上)系統,您的操作系統是什麼以及您的計算機是什麼。