[PlatformIO] How to build a library to share across projects?
-
A few weeks ago I switched from the Arduino IDE to PlatformIO. Since then developing of MySensors nodes becomes as convenient as it is developing Java or NodeJS applications. Then I tried to build a base library to share common functionality across my different projects. To archive this I've build a PlatformIO library project and added MySensors as dependency, since I want to add or wrap existing MySensors functionality. When I try to build one of my depending projects, LDF resolves the dependency tree as following:
Library Dependency Graph |-- <BaseLibrary> | |-- <MySensors> v2.1.0 | | |-- <SPI> v1.0 | | |-- <Wire> v1.0 | | |-- <EEPROM> v1.0 |-- <SPI> v1.0 |-- <MySensors> v2.1.0 | |-- <SPI> v1.0 | |-- <Wire> v1.0 | |-- <EEPROM> v1.0 |-- <EEPROM> v1.0 |-- <ESP8266WiFi> v1.0
But when I add
#include <MySensors.h>
to myBaseLibrary.cpp
and build the depending project, the linker shows for each MySensors method the error... multiple definition ...
. From my understandung the following precompiler statement#ifndef MySensors_h #define MySensors_h
should avoid that this happens. Does anyone know how to build a multi project library with a MySensors dependency? Is this possible with the current MySensors design?
Suggested Topics
-
Arduino Celebrates 10 years (Malmö/Sweden)
Announcements • 29 Mar 2014, 17:08 • hek 29 Mar 2014, 17:08 -
Saving last known good state, but not in EEPROM
Development • 30 Jan 2024, 18:46 • OldSurferDude 15 Jan 2025, 08:51 -
LAN8720A - will mysensors work with this module
Development • 13 Nov 2024, 17:06 • Marcin 15 Nov 2024, 10:59 -
Sending offset to node
Development • 31 Jan 2025, 00:59 • bsl88k 4 Feb 2025, 12:14 -
Home Assistant/MySensors quirks
Development • 21 days ago • OldSurferDude 21 days ago -
Gateway without a radio
Development • 12 Jan 2025, 23:19 • OldSurferDude 14 Jan 2025, 22:07