Arduino IDE не может скомпилировать ни одного скетча

ОС: Windows 11

Версия Arduino IDE: 2.3.2

Недавно я открыл Arduino IDE и обнаружил, что ничего — абсолютно ничего — не компилируется. При каждой попытке получалось следующее сообщение об ошибке:

Using board 'uno' from platform in folder: C:\Users\abrah\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6
Using core 'arduino' from platform in folder: C:\Users\abrah\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6

Detecting libraries used...
C:\Users\abrah\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\abrah\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino -IC:\Users\abrah\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard C:\Users\abrah\AppData\Local\Temp\arduino\sketches\5ECA4E3B637A45D6CBCAE2784E028875\sketch\sketch_aug10a.ino.cpp -o nul
Error while detecting libraries included by C:\Users\abrah\AppData\Local\Temp\arduino\sketches\5ECA4E3B637A45D6CBCAE2784E028875\sketch\sketch_aug10a.ino.cpp
Generating function prototypes...
C:\Users\abrah\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\7.3.0-atmel3.6.1-arduino7/bin/avr-g++ -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10607 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR -IC:\Users\abrah\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\cores\arduino -IC:\Users\abrah\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.8.6\variants\standard C:\Users\abrah\AppData\Local\Temp\arduino\sketches\5ECA4E3B637A45D6CBCAE2784E028875\sketch\sketch_aug10a.ino.cpp -o C:\Users\abrah\AppData\Local\Temp\1032671058\sketch_merged.cpp
avr-g++: error: device-specs/specs-atmega328p: No such file or directory
exit status 1

Compilation error: exit status 1

Я несколько раз удалял и переустанавливал IDE с сайта, пытался скомпилировать несколько готовых примеров на платах Uno и Nano, а также пытался найти файл, который, как сообщается, отсутствует. (Он не существует). Я также скомпилировал и загрузил свой код с помощью Arduino Cloud Editor, и это сработало. Однако Cloud Editor пока находится на стадии прототипа и оставляет желать лучшего, поэтому я хотел бы как можно скорее вернуться к использованию обычной IDE.

, 👍0

Обсуждение

попробуйте скомпилировать пустой скетч, @jsotola

Конкретное сообщение об ошибке: «device-specs/specs-atmega328p: Нет такого файла или каталога», поэтому, пожалуйста, проверьте каталог установки. Что вы делали с компьютером (устанавливали другое ПО, организовывали домашний каталог, выполняли общую очистку и т.д.) с момента последнего сбоя? Это не обязательно должно быть связано с какими-либо действиями в Arduino IDE., @the busybee

@jsotola выдает ту же ошибку @ the busybee недавно (случайно) удалили учётную запись моего компьютера. После этого случая я переустановил Arduino IDE, потому что предыдущая автоматически восстановленная версия не работала., @Robert Goddard-Wright

Удаление Arduino IDE и повторная установка обновляет только эту IDE, но все платы, компиляторы и ядра Arduino хранятся в C:\Users\abrah\AppData\Local\Arduino15. Если у вас возникли проблемы, переименуйте ее, например, в Arduino15_backup и запустите IDE (и снова установите все необходимые платы)., @KIIV

@KIIV сейчас пойду и попробую., @Robert Goddard-Wright

ДА! Сработало! Большое спасибо! @KIIV, если хочешь отправить этот комментарий как полноценный ответ, я буду очень рад принять его и поставить лайк., @Robert Goddard-Wright


2 ответа


Лучший ответ:

1

Сообщения об ошибках указывают на отсутствие спецификации устройства в структуре каталогов компилятора. Поскольку все установленные платы из Board Manager хранятся вне каталогов установки Arduino IDE (C:\Users\abrah\AppData\Local\Arduino15), переустановка IDE не влияет на них. Вы даже можете запускать разные IDE, и все они будут использовать этот каталог.

Вы можете удалить этот каталог (или переименовать) и снова загрузить все используемые вами доски, и они должны быть совершенно новыми.

Я забыл упомянуть, что вы можете попробовать удалить платы Arduino AVR в Boards Manager и переустановить их снова или перейти на предыдущую версию, а затем вернуться к последней

,

Автор комментария пишет: «Моя учётная запись на компьютере недавно (случайно) была удалена». Папка Arduino15 находится в домашней папке пользователя, так что, полагаю, автору нужно было только установить пакеты., @Juraj


0

Я видел, как это происходило, когда вы не выбирали цель (плату для компиляции) или не меняли цель при попытке скомпилировать код для следующей

,