PlatformIO 5.0.1: Gestion des librairies
Un nouveau mode d’utilisation des librairies a été mis en place dans la version 5.0.1 de PlatformIO.
Lorsque vous développez un projet et que vous avez besoin d’une librairie, vous pouvez procéder de la manière suivante :
Allez dans le menu principale et sélectionner l’onglet verticale Librairies
Puis recherchez votre librairie, par exemple horloge DS3231
Une fois que vous avez trouvé la librairie qui vous intéresse, cliquez dessus et vous y verrez ces caractéristiques :
la version actuelle, des exemples … Si elle vous convient, ne cliquez pas sur le bouton Add to Project, mais cliquez sur l’onglet « installation » ainsi vous pourrez sélectionner exactement le type d’installation que vous désirez faire.
Cliquez sur l’onglet « installation » et vous obtiendrez ces informations :
On vous propose 3 modes d’installation de la librairie :
- <nom de librairie> @ ^X.Y.Z : l’accent circonflexe indique qu’à chaque compilation, PlatformIO mettra à jour la librairie si une nouvelle version est disponible.
- <nom de librairie> @ ~X.Y.Z : le « tilse » indique qu’à chaque compilation, PlatformIO mettra à jour la librairie pour autant que les version majeur et mineur sont identiques, seul un correctif est disponible. Exemple version ~1.2.5 il faut qu’uniquement 5 soit supérieur pour que la mise à jour soit faite, mais le 1.2 doit rester.
- <nom de librairie> @ X.Y.Z : La version indiquée est forcée, il n’y aura pas de mise à jour.
Allez ensuite dans le fichier platformio.ini et coller ce lien après la balise Lib_deps comme l’exemple ci-dessous :
Lors de la première compilation, les libraires seront téléchargées dans votre projet.
Je préfère ce mode d’utilisation à d’autres qui installent la librairie sur votre PC dans une répertoire commun à tous vos projets. Lorsque vous distribuez votre projet à un autre développeur, les librairies se téléchargeront si nécessaires et tout est propre.
Décidément, la fourmi PFIO est un environnement difficile à utiliser… Pour ma part, je procède ainsi: les bibliothèques sont copiées dans le répertoire « projet\lib » du projet (remplacez le « projet » par son nom).
Ensuite j’édite le fichier « projet\platformio.ini « , avec les lib utilisées. Par exemple:
framework = arduino
; multi-line definition
lib_deps =
jm_LCM2004A_I2C
jm_PCF8574
jm_Scheduler
OneWire
; end of lib dependence
Ainsi, les lib sont complètement maitrisée, indépendamment des mises à jour qui surviennent (trop?) rapidement.