[résolu] Trop de dossiers bibliothèques. Est-ce normal?

Bonjour à tous,
Trop de dossiers bibliothèques. Est-ce normal ?

  1. J'ai le sentiment que des dossiers bibliothèque sont un peu partout sous Win10, c'est le bazar.
    Y a-t-il une explication, une règle de rangement ? En quelques mots, m'expliquer SvP.

Exemple typique :
a) C:\Program Files\Arduino\libraries\ ... (Arduino-Temperature-Control-Library-master) (et non utilisé OneWire-master)
b) C:\Users\scoubidou\Documents\Arduino_187\libraries\ .... (OneWire et NTPClient et PCF8574_ESP-master)
c) C:\Users\scoubidou\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries.... (ESP8266WebServer et ESP8266WiFi et Wire)

et cette ligne que je ne comprends pas, pour le SSL ?
"C:\Users\scoubidou\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\3.0.4-gcc10.3-1757bed/bin/xtensa-lx106-elf-size" -A "C:\Users\SCOUBI~1\AppData\Local\Temp\arduino_build_272008/serv2pcf8574_.ino.elf"

puis : Le croquis utilise 439369 octets (42%) de l'espace de stockage de programmes.....

  1. al1fch (sous linux) me dit que dans la bibliothèque esp8266WiFi il trouve HTTPSRequest.ino :
    "HTTPSRequest.ino est l'un des exemples fourni par l'extension ESP8266 pour la librairie ESP8266WiFi"

A priori je possède bien la librairie ESP8266WiFi (version 1.0).
Je ne trouve pas le fichier HTTPSRequest.ino ?
Je le trouve sur Github. Est-ce normal ? explication ?

Réponses brèves svp,
Merci d'avance.

sur ce point je viens de répondre sur ton autre fil de discussion

Quelle est ta version d'extension ESP8266 pour IDE ARduino (version actuelle : 3.0.2, la librairie ESP8266WiFi à jour vient avec et se trouve non pas dans le dossier utilisateur mais dans un dossier de librairies spécifiques ESP8266 fournies dans l'extension.

'Trop de dossiers libairies ' ? peut être sur ta machine selon ce que tu as fait

en gros je vois , chacun à sa place :

-les libairies de base Arduino

-les librairies ajoutées par l'utilisateur (manuellement ou avec l'outil IDE) ... dans son dossier utilisateur

-les libariries spécifiques à une plateforme particulière (ESP8266, ESP32........etc) , installées par le Board Manager avec tout ce qui concerne cette plateforme particulière (chemin ./Arduino15..... /packages.....)

la librairie ESP8266WiFi sur ma machine a été installée ici par le Gestionnaire de Cartes :
.Arduino15/packages/esp8266/hardware/esp8266/3.0.2/libraries/ESP8266WiFi/
un sous dossier /examples contient tous les exemples

Il y a une autre solution mais il faut s'habituer à PlatFormIo.

Par défaut PlatformIo range les bibliothèques par projet. Il est possible de les mettre en commun pour tous les projets mais dans ce cas autant utiliser l'IDE arduino.

Avantage : tu peux avoir différentes versions de bibliothèques actives puisque c'est géré par projets dans le répertoire du projet. Un ancien projet sera recompilable même si les dernières versions de la bibliothèque ont été modifiée. Ce qui n'est pas forcément le cas avec la gestion des mises à jour Arduino.

Inconvénient : des duplications qui prennent de la place sur le disque.

Avis très personnel : avec les capacités actuelles des mémoires de stockage je trouve la méthode PlatformIo plus pratique.

Autre solution avec l'IDE arduino :
Il est parfaitement possible de ne pas placer les fichiers des bibliothèques dans le répertoire dédié par l'IDE arduino.

Il est possible de placer les fichiers *.h et *.cpp dans le même répertoire que le fichier ino.
Il faut juste changer les chevrons en guillemets. :
#include <machin.h> remplacé par : #include "machin.h"
pour forcer le compilateur à rechercher dans le répertoire courant.

On a un fonctionnement identique à celui de platformIo avec la duplication sur le disque.

Bonsoir al1fch et 68tjs,
Merci pour vos réponses.

L'autre discussion dont il est question est ici :
https://forum.arduino.cc/t/probleme-de-declaration-ide-1-8-7-sur-esp8266-pcf8574

Quelle est ma version esp8266WiFi ?
Voici ce que j'ai en fin de compilation.
Utilisation de la bibliothèque ESP8266WiFi version 1.0 dans le dossier: C:\Users\scoubidou\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\3.0.2\libraries\ESP8266WiFi .
Version 1 ou 3.0.2 ce n'est pas très clair ?
A part cela, donc tout va bien.

J'ai trouvé le fichier HTTPSRequest.ino sur une bibiothèque que je viens de télécharger, mais non installée :
Arduino-master.zip 36,5Mo ,(mais ce zip n'est pas installable !). "Le dossier spécifié ne contiens pas de bibliothèque valide"
C:\Users\scoubidou\Documents\provisoire\Arduino-master\libraries\ESP8266WiFi\examples\HTTPSRequest
Je ne peux pas installer le zip avec l'IDE : "Le dossier spécifié ne contiens pas de bibliothèque valide" mais je viens de me rendre compte que mon IDE 1.8.7 l'avais pris en charge car maintenant je le vois dans les exemples.
Tous ces automatismes me perturbes. Ce n'est pas logique.

@68tjs,
C'est bien ce mécanisme de mise à jour des bibliothèques qui fait que mes anciens programmes ne peuvent plus être compilés.
Je ne me suis pas méfié, maintenant c'est la galère.
Je savais qu'il était possible de placer les bibliothèques dans le même dossier que le squetch.
C'est ce que je vais essayer faire maintenant. Je ne me ferai plus b....

Pour moi, cette discussion est terminée. Merci à tous.

V1 c'est la version de la librairie ESP8266WiFi
V3.0.2 c'est la version du package ESP8266

OK, merci mon ami !