Multiple Definition Errors when using MeMegaPi.h
AlexanderCarlisi opened this issue · 0 comments
AlexanderCarlisi commented
Having multiple code files that include "MeMegaPi.h" causes a Multiple Definitions error.
Steps to Reproduce :
- create a new Header file, example : "TestHeader.h"
- in TestHeader.h add #include "MeMegaPi.h"
- in your main .INO file #include "TestHeader.h"
Cause :
The MeMegaPi.h file contains variable definitions instead of declarations, leading to multiple definitions when included in multiple compilation units.
Solution:
We moved the variable definitions from MeMegaPi.h to MeMegaPi.cpp and declared them as extern in MeMegaPi.h. This change ensures the variables are only defined once, resolving the multiple definition errors.