Using 2.2.x MySensors library in Sloeber (Eclipse Arduino IDE). Build errors. (Solved)
-
I wanted to use the 2.2.x development branch in my project. So, I swapped out the code that Sloeber adds when you add the MySensors 2.1.1 release version with the latest code from the Github repo.
Context: This is for a PIR motion sensor using the
NRF24L01+
radio.I.e.: Replace:
/Applications/sloeber 4.app/Contents/Eclipse/arduinoPlugin/libraries/MySensors/2.1.1
with the contents ofgit clone https://github.com/mysensors/MySensors.git 2.1.1
I tried building my project (a PIR node), and got several build errors.
Example build errors:
'int16_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 118 C/C++ Problem
'int16_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 123 C/C++ Problem
'int16_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 128 C/C++ Problem
'int16_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 133 C/C++ Problem
'int16_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 138 C/C++ Problem
'int16_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 143 C/C++ Problem
'uint8_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 68 C/C++ Problem
'uint8_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 72 C/C++ Problem
'uint8_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 81 C/C++ Problem
'uint8_t' does not name a type MyTransportHAL.h /MotionSensorBattery/libraries/MySensors/hal/transport line 97 C/C++ Problem
Function 'NRF5_ESB_getNodeID' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 65 Semantic Error
Function 'NRF5_ESB_getReceivingRSSI' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 137 Semantic Error
Function 'NRF5_ESB_getSendingRSSI' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 132 Semantic Error
Function 'NRF5_ESB_initialize' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 54 Semantic Error
Function 'NRF5_ESB_isDataAvailable' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 86 Semantic Error
Function 'NRF5_ESB_powerDown' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 112 Semantic Error
Function 'NRF5_ESB_powerUp' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 117 Semantic Error
Function 'NRF5_ESB_readMessage' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 97 Semantic Error
Function 'NRF5_ESB_sanityCheck' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 91 Semantic Error
Function 'NRF5_ESB_sendMessage' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 80 Semantic Error
Function 'NRF5_ESB_setNodeAddress' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 59 Semantic Error
Function 'NRF5_ESB_sleep' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 122 Semantic Error
Function 'NRF5_ESB_standBy' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 127 Semantic Error
Function 'NRF5_ESB_startListening' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 60 Semantic Error
Function 'NRF5_getTxPowerLevel' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 157 Semantic Error
Function 'NRF5_getTxPowerPercent' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 152 Semantic Error
Function 'NRF5_setTxPowerPercent' could not be resolved MyTransportNRF5_ESB.cpp /MotionSensorBattery/libraries/MySensors/hal/transport line 162 Semantic Error
make: *** [libraries/MySensors/hal/transport/MyTransportRF24.cpp.o] Error 1 MotionSensorBattery C/C++ ProblemTo fix this, I simply excluded the
./hal
directory from the build. Everything appears to work fine now.I.e.: expand
libraries
> expandMySensors
> right click the./hal
directory > Properties > selectC/C++ Build
> tickExclude resource from build
.Can anyone shed some light on the work being done in the
./hal
directory? Am I messing something up by excluding this from my build?