2

Bakground:

When compiling a demo project about e-paper, I got this problem

./GxEPD/src/GxIO/GxIO_SPI/GxIO_SPI.h:39:5: error: ‘SPISettings’ does not name a type
     SPISettings _spi_settings;
     ^

which on the Internet, people often say your Arduino core is not up-to-date and the one installed from

sudo apt install arduino-core

is ancient. And you have to install the latest version.

Regardless of whether this solves my original problem or not, I want to have the latest Arduino core on my laptop. From arduino.cc I grabbed a zipped file and ran ./install.sh which did not provide enough results to know what it exactly did. Now, I am concerned that I have multiple installation in several places.

Main question:

When I run my make file and it is processed by arduino-mk, which version of arduino-core is it referred to and where is it located?

I am looking for a full proof method. I do not want to open somewhere from / directory accidentally. Because maybe this is not the arduino-core in use.

ar2015
  • 173
  • 7

1 Answers1

1

The ancient version installed by apt lives in /usr/share/arduino/hardware/arduino/cores/arduino.

If you download and unpack a recent version, it will stay wherever you left it. For example, I have an Arduino core in /home/edgar/Downloads/arduino-1.8.10/hardware/arduino/avr/cores/arduino. The installation script doesn't really install those files. It does install some icons and desktop shortcuts, but neither the core nor the Arduino IDE. Instead, it assumes the downloaded package will stay wherever it was when you ran the script.

If you want a somewhat cleaner installation, I suggest you move the package to /opt, recursively chown it to root, and run the setup script there. The core will then be in /opt/arduino-<version>/hardware/arduino/avr/cores/arduino.

Edgar Bonet
  • 45,094
  • 4
  • 42
  • 81