Excuse me if this isn't the right place to ask for help.
I'm a beginner with Arduino and I don't understand everything.
Here's my problem:
My target board is an Arduino Uno 3.
My first installation of the Arduino IDE was version 1.8.19 under Linux Mint, and when I compiled a sketch containing a library (#include LiquidCrystal.h in the HelloWorld sketch, and many others I tried), the compilation consistently returned an error.
Since then, I've installed version 2.3.8 as an update. The problem persists.
Does anyone know what the issue might be?
Thank you in advance.
Typical compilation result:
Arduino : 1.8.19 (Linux), Carte : "Arduino UNO"
arduino-builder -dump-prefs -logger=machine -hardware /usr/share/arduino/hardware -hardware /home/daniel/.arduino15/packages -tools /usr/share/arduino/hardware/tools/avr -tools /home/daniel/.arduino15/packages -libraries /home/daniel/Arduino/libraries -fqbn=arduino:avr:uno -ide-version=10819 -build-path /tmp/arduino_build_277013 -warnings=default -build-cache /tmp/arduino_cache_398518 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=/home/daniel/.arduino15/packages/arduino/tools/avrdude/8.0.0-arduino1 -prefs=runtime.tools.avrdude-8.0.0-arduino1.path=/home/daniel/.arduino15/packages/arduino/tools/avrdude/8.0.0-arduino1 -prefs=runtime.tools.avr-gcc.path=/home/daniel/.arduino15/packages/arduino/tools/avr-gcc/7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.avr-gcc-7.3.0-atmel3.6.1-arduino7.path=/home/daniel/.arduino15/packages/arduino/tools/avr-gcc/7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.arduinoOTA.path=/home/daniel/.arduino15/packages/arduino/tools/arduinoOTA/1.3.0 -prefs=runtime.tools.arduinoOTA-1.3.0.path=/home/daniel/.arduino15/packages/arduino/tools/arduinoOTA/1.3.0 -verbose /tmp/arduino_modified_sketch_756838/HelloWorld.ino
arduino-builder -compile -logger=machine -hardware /usr/share/arduino/hardware -hardware /home/daniel/.arduino15/packages -tools /usr/share/arduino/hardware/tools/avr -tools /home/daniel/.arduino15/packages -libraries /home/daniel/Arduino/libraries -fqbn=arduino:avr:uno -ide-version=10819 -build-path /tmp/arduino_build_277013 -warnings=default -build-cache /tmp/arduino_cache_398518 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=/home/daniel/.arduino15/packages/arduino/tools/avrdude/8.0.0-arduino1 -prefs=runtime.tools.avrdude-8.0.0-arduino1.path=/home/daniel/.arduino15/packages/arduino/tools/avrdude/8.0.0-arduino1 -prefs=runtime.tools.avr-gcc.path=/home/daniel/.arduino15/packages/arduino/tools/avr-gcc/7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.avr-gcc-7.3.0-atmel3.6.1-arduino7.path=/home/daniel/.arduino15/packages/arduino/tools/avr-gcc/7.3.0-atmel3.6.1-arduino7 -prefs=runtime.tools.arduinoOTA.path=/home/daniel/.arduino15/packages/arduino/tools/arduinoOTA/1.3.0 -prefs=runtime.tools.arduinoOTA-1.3.0.path=/home/daniel/.arduino15/packages/arduino/tools/arduinoOTA/1.3.0 -verbose /tmp/arduino_modified_sketch_756838/HelloWorld.ino
Using board 'uno' from platform in folder: /home/daniel/.arduino15/packages/arduino/hardware/avr/1.8.7
Using core 'arduino' from platform in folder: /home/daniel/.arduino15/packages/arduino/hardware/avr/1.8.7
Attention: platform.txt du cœur 'Arduino AVR Boards' contiens compiler.path={runtime.tools.avr-gcc.path}/bin/ dépassé, converti automatiquement en compiler.path=/usr/bin/. La mise a niveau de ce cœur est conseillée.
Detecting libraries used...
"/usr/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=10819 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-I/home/daniel/.arduino15/packages/arduino/hardware/avr/1.8.7/cores/arduino" "-I/home/daniel/.arduino15/packages/arduino/hardware/avr/1.8.7/variants/standard" "/tmp/arduino_build_277013/sketch/HelloWorld.ino.cpp" -o "/dev/null"
Generating function prototypes...
"/usr/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=10819 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-I/home/daniel/.arduino15/packages/arduino/hardware/avr/1.8.7/cores/arduino" "-I/home/daniel/.arduino15/packages/arduino/hardware/avr/1.8.7/variants/standard" "/tmp/arduino_build_277013/sketch/HelloWorld.ino.cpp" -o "/tmp/arduino_build_277013/preproc/ctags_target_for_gcc_minus_e.cpp"
/tmp/arduino_modified_sketch_756838/HelloWorld.ino:1:27: erreur fatale: LiquidCrystal.h : Aucun fichier ou dossier de ce nom
compilation terminée.
exit status 1
Erreur de compilation pour la carte Arduino UNO
it would be easier to help if you included your code. First guess, from your own wording, is that
You're missing the required <> in the include statement, which would normally look something like:
#include <LiquidCrystal.h>
However, I know the forum software does something with <> if NOT in a code block, so your original post may have had those characters in it, but they've been stripped.
#include <LiquidCrystal.h> // error: "No files or folders with this name" "Aucun fichier ou dossier de ce nom"
// #include LiquidCrystal.h // error: "#include expects "FILENAME" or <FILENAME"
// LiquidCrystal.h // error: 'LiquidCrystal' does not name a type
void setup(){}
void loop(){}
The first line, above, showing how to write the command, indicates your library is missing.
Try:
IDE >> SKETCH >> INCLUDE LIBRARY >> MANAGE LIBRARIES >> enter LiquidCrystal
or
IDE >> SKETCH >> INCLUDE LIBRARY >> ADD .ZIP LIBRARY >> (your downloaded library)
I thank camsysca, jim-p, sonofcy, xfpd, and kenb4 for their help.
I've explored many avenues, even loading a sketch from the sketch library without modifying anything. The result is the same: "Compile error for Arduino UNO board."
I don't know what happened, but I'm out of ideas.
Despite all this, I can imagine that the IDE has lost track of the libraries, causing the compilation error...
So I tried version 2.3.8 of the IDE, and there are no more problems, contrary to what I said previously.
What I'm looking for now is how to uninstall version 1.8.19, which no longer works for me.
I'm also looking for a way to create a desktop shortcut to version 2.3.8.
Did you install using the ZIP file (it's the only download option so I assume that that is the case)? If so, the IDE itself is where you unzipped the file.
If I compile on my Manjaro Linux system I get the following relevant information (verbose output during compilation enabled)
2.3.8 appImage
2.3.8
Using board 'leonardo' from platform in folder: /home/wim/.arduino15/packages/arduino/hardware/avr/1.8.7
Using core 'arduino' from platform in folder: /home/wim/.arduino15/packages/arduino/hardware/avr/1.8.7
Using library LiquidCrystal at version 1.0.7 in folder: /home/wim/.arduino15/libraries/LiquidCrystal
1.8.19 (zip install)
1.8.19
Using board 'leonardo' from platform in folder: /home/wim/.arduino15/packages/arduino/hardware/avr/1.8.7
Using core 'arduino' from platform in folder: /home/wim/.arduino15/packages/arduino/hardware/avr/1.8.7
Using library LiquidCrystal at version 1.0.7 in folder: /home/wim/Desktop/arduino_ide_1.8.19/libraries/LiquidCrystal
Note the difference for the LiquidCrystal library.
If you did never update the AVR board package for IDE 1.8.19, the first two lines of each might differ in version number (here 1.8.7).
I could not find any references to other directories on my Linux system with regards to IDE 1.8.19. So I think it is sufficient to delete the directory where you installed IDE 1.8.19.
From your first set of errors.
LiquidCrystal.h: No such file or directory
compiler.path={runtime.tools.avr-gcc.path}/bin/ deprecated,
converted automatically to compiler.path=/usr/bin/
Try this:
find /home/daniel/.arduino15 /usr/share/arduino -name LiquidCrystal.h /usr/share/arduino/libraries/LiquidCrystal, but not under .arduino15, you may have a mixed install problem.
A quick workaround is to install the library manually.
is caused by modifications made to Arduino IDE by the 3rd party maintainer of a variant of the IDE available for installation via a Linux package manager (if you are interested in the boring details, see this).
This means that you should uninstall the Arduino IDE 1.x package using the package manager tool you used to install it in the first place. If you would like further guidance in doing that, just let us know. We would first need to know which package manager tool you used.
Okay, I'll try to send you the data from the Synaptic Package Manager.
Using the manager, I selected the packages related to Arduino. Since the text is in French, I'm translating it into English using Google Translate.
It's a bit of a makeshift solution, but I think the information is complete at this level.
OK, so you can install Arduino IDE 1.8.19 by unselecting the box to the left of its entry in that list, or by right clicking on the entry, then selecting "Mark for Removal" from the context menu that opens:
IIRC, using any package manager is strongly NOT recommended when installing Arduino. They tend to do things like installing a separate and maybe-incompatible version of avr-gcc. It's much better to download the tar file and install manually.