Arduino в Windows против Ubuntu

У меня есть код, который отлично работает в Windows, но выдает ошибки в Ubuntu. Я заметил, что в то время как Windows запускает код с использованием avr-gcc, Ubuntu пытается запустить его с помощью avr-g++. Любые функции, не определенные в void setup(), отображаются как «не объявленные в этой области». Есть ли способ заставить его использовать avr-gcc?

, 👍-1

Обсуждение

Какую версию вы используете в Ubuntu? Вы случайно не из apt устанавливали?, @Majenko

avr-gcc автоматически вызывает двоичный файл arduino-builder, позвольте мне посмотреть, какие выходные данные вашего журнала консоли после компиляции/загрузки файла эскиза и какие вы пробовали шаги?, @abu-ahmed al-khatiri


1 ответ


2

В моем случае я бы посоветовал вам скомпилировать/загрузить свой скетч Arduino в Ubuntu 17.10, как мой.

У меня

  • Чип ESP8266 на базе платы Wemos D1 MINI.
  • Определите порт ttyUSB0 как мой собственный.

Перед загрузкой скетча вам понадобится пакет Arduino для Ubuntu на официальных страницах Arduino или, если у вас есть пакет Arduino Список источников Aptitude/репозиторий PPA Arduino со следующим sudo apt-get install -y arduino. для меня это то же самое.

После установки пакета Arduino попробуйте выполнить следующую команду:

cd /path/installation/package/ //для изменения каталога на пакет Arduino

ARDUINO-DIR(pwd) //для создания среды каталога Arduino

cd $HOME/Arduino/sketch/ //для изменения каталога вашего скетча Arduino

ls -l // для получения списка всех элементов в вашей папке

$ARDUINO-DIR/arduino --verify sketch.ino --board (board) --port (port) --verbose // для компиляции вашего скетча

$ARDUINO-DIR/arduino --upload sketch.ino --board (board) --port (port) --verbose //для загрузки вашего скетча

ПРИМЕЧАНИЕ:

например --board esp8266:esp8266:d1_mini //для платы WemosD1Mini или
например --board arduino:avr:uno //для платы ArduinoUNO.
например --port /dev/ttyUSB0 или /dev/ttyACM0 //если вы определяете порт ttyUSB0 или ttyACM0, который у вас есть.

См. ниже в моем подробном журнале появляются avr-gcc и avr-g++, автоматически вызываемые в двоичном файле arduino-builder для компиляции всей моей определенной библиотеки.

Надеюсь, вы сможете это получить.

,

Я понял это. В Ubuntu arduino IDE отсутствовала библиотека. Спасибо за помощь, @Just Curious

@JustCurious рад это слышать., @abu-ahmed al-khatiri

@JustCurious какая библиотека? Было бы неплохо, если бы вы разместили решение в качестве ответа будущим посетителям., @RubberDuck