Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Build Failure - two issues #3052

Closed
rabarar opened this issue Jan 4, 2024 · 7 comments
Closed

[Bug]: Build Failure - two issues #3052

rabarar opened this issue Jan 4, 2024 · 7 comments
Labels
bug Something isn't working

Comments

@rabarar
Copy link

rabarar commented Jan 4, 2024

Category

Other

Hardware

Not Applicable

Firmware Version

latest pull

Description

The firmware doesn't build: the c_cpp_properties.json generated file is corrupted with escape \ characters for one of the filenames

"~/.platformio/packages/framework-arduinoststm32/variants/STM32WLxx/WL54CCU_WL55CCU_WLE4C\(8-B-C\)U_WLE5C\(8-B-C\)U",

The build fails with errors:

In file included from src/DisplayFormatters.h:2,
                 from src/DisplayFormatters.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/GPSStatus.h:2,
                 from src/mesh/MeshService.h:7,
                 from src/PowerFSM.cpp:11:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/Power.cpp:14:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/SerialConsole.cpp:2:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/airtime.cpp:2:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
src/Power.cpp: In member function 'uint16_t AnalogBatteryLevel::getINAVoltage()':
src/Power.cpp:290:13: error: 'nodeTelemetrySensorsMap' was not declared in this scope
  290 |         if (nodeTelemetrySensorsMap[meshtastic_TelemetrySensorType_INA219].first == config.power.device_battery_ina_address) {
      |             ^~~~~~~~~~~~~~~~~~~~~~~
*** [.pio/build/wio-e5/src/DisplayFormatters.cpp.o] Error 1
src/Power.cpp:291:20: error: 'ina219Sensor' was not declared in this scope
  291 |             return ina219Sensor.getBusVoltageMv();
      |                    ^~~~~~~~~~~~
*** [.pio/build/wio-e5/src/SerialConsole.cpp.o] Error 1
*** [.pio/build/wio-e5/src/PowerFSM.cpp.o] Error 1
*** [.pio/build/wio-e5/src/airtime.cpp.o] Error 1
src/Power.cpp:294:20: error: 'ina260Sensor' was not declared in this scope
  294 |             return ina260Sensor.getBusVoltageMv();
      |                    ^~~~~~~~~~~~
In file included from src/GPSStatus.h:2,
                 from src/main.h:3,
                 from src/concurrency/NotifiedWorkerThread.cpp:3:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
src/Power.cpp:297:20: error: 'ina3221Sensor' was not declared in this scope
  297 |             return ina3221Sensor.getBusVoltageMv();
      |                    ^~~~~~~~~~~~~
src/Power.cpp: In member function 'bool AnalogBatteryLevel::hasINA()':
src/Power.cpp:307:13: error: 'nodeTelemetrySensorsMap' was not declared in this scope
  307 |         if (nodeTelemetrySensorsMap[meshtastic_TelemetrySensorType_INA219].first == config.power.device_battery_ina_address) {
      |             ^~~~~~~~~~~~~~~~~~~~~~~
In file included from src/RedirectablePrint.cpp:2:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
src/Power.cpp:308:18: error: 'ina219Sensor' was not declared in this scope
  308 |             if (!ina219Sensor.isInitialized())
      |                  ^~~~~~~~~~~~
src/Power.cpp:310:20: error: 'ina219Sensor' was not declared in this scope
  310 |             return ina219Sensor.isRunning();
      |                    ^~~~~~~~~~~~
*** [.pio/build/wio-e5/src/concurrency/NotifiedWorkerThread.cpp.o] Error 1
src/Power.cpp:313:18: error: 'ina260Sensor' was not declared in this scope
  313 |             if (!ina260Sensor.isInitialized())
      |                  ^~~~~~~~~~~~
*** [.pio/build/wio-e5/src/RedirectablePrint.cpp.o] Error 1
src/Power.cpp:315:20: error: 'ina260Sensor' was not declared in this scope
  315 |             return ina260Sensor.isRunning();
      |                    ^~~~~~~~~~~~
In file included from src/GPSStatus.h:2,
                 from src/main.h:3,
                 from src/graphics/TFTDisplay.cpp:2:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/GPSStatus.h:2,
                 from src/gps/GPS.h:3,
                 from src/gps/GPS.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
*** [.pio/build/wio-e5/src/Power.cpp.o] Error 1
In file included from src/mesh/Channels.h:4,
                 from src/mesh/Channels.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
*** [.pio/build/wio-e5/src/graphics/TFTDisplay.cpp.o] Error 1
In file included from src/mesh/Channels.h:4,
                 from src/mesh/MeshModule.h:3,
                 from src/mesh/MeshModule.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/GPSStatus.h:2,
                 from src/main.h:3,
                 from src/gps/NMEAWPL.h:3,
                 from src/gps/NMEAWPL.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
*** [.pio/build/wio-e5/src/mesh/Channels.cpp.o] Error 1
In file included from src/mesh/Channels.h:4,
                 from src/mesh/Router.h:3,
                 from src/mesh/PacketHistory.h:3,
                 from src/mesh/PacketHistory.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
src/gps/GPS.cpp: In member function 'GnssModel_t GPS::probe(int)':
src/gps/GPS.cpp:772:22: error: 'class HardwareSerial' has no member named 'baudRate'
  772 |     if (_serial_gps->baudRate() != serialSpeed) {
      |                      ^~~~~~~~
src/gps/GPS.cpp:774:22: error: 'class HardwareSerial' has no member named 'updateBaudRate'
  774 |         _serial_gps->updateBaudRate(serialSpeed);
      |                      ^~~~~~~~~~~~~~
In file included from src/mesh/Channels.h:4,
                 from src/mesh/Router.h:3,
                 from src/mesh/PacketHistory.h:3,
                 from src/mesh/FloodingRouter.h:3,
                 from src/mesh/FloodingRouter.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
src/gps/GPS.cpp:827:22: error: 'class HardwareSerial' has no member named 'updateBaudRate'
  827 |         _serial_gps->updateBaudRate(serialSpeed);
      |                      ^~~~~~~~~~~~~~
In file included from src/mesh/Channels.h:4,
                 from src/mesh/PhoneAPI.cpp:2:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/mesh/Channels.h:4,
                 from src/mesh/MeshModule.h:3,
                 from src/mesh/SinglePortModule.h:2,
                 from src/mesh/ProtobufModule.h:2,
                 from src/mesh/ProtobufModule.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/mesh/SX126xInterface.cpp:4,
                 from src/mesh/InterfacesTemplates.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/mesh/Channels.h:4,
                 from src/mesh/NodeDB.cpp:4:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/GPSStatus.h:2,
                 from src/gps/GPS.h:3,
                 from src/mesh/MeshService.cpp:7:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
In file included from src/GPSStatus.h:2,
                 from src/gps/GPS.h:3,
                 from src/main.cpp:1:
src/mesh/NodeDB.h:114:92: error: 'uint' has not been declared
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                                            ^~~~
*** [.pio/build/wio-e5/src/mesh/MeshModule.cpp.o] Error 1
*** [.pio/build/wio-e5/src/mesh/PacketHistory.cpp.o] Error 1
*** [.pio/build/wio-e5/src/mesh/ProtobufModule.cpp.o] Error 1
*** [.pio/build/wio-e5/src/gps/GPS.cpp.o] Error 1
*** [.pio/build/wio-e5/src/gps/NMEAWPL.cpp.o] Error 1
*** [.pio/build/wio-e5/src/mesh/FloodingRouter.cpp.o] Error 1
*** [.pio/build/wio-e5/src/mesh/InterfacesTemplates.cpp.o] Error 1
src/mesh/NodeDB.cpp:357:6: error: no declaration matches 'void NodeDB::removeNodeByNum(uint)'
  357 | void NodeDB::removeNodeByNum(uint nodeNum)
      |      ^~~~~~
src/mesh/NodeDB.h:114:76: note: candidate is: 'void NodeDB::removeNodeByNum(int)'
  114 |     void initConfigIntervals(), initModuleConfigIntervals(), resetNodes(), removeNodeByNum(uint nodeNum);
      |                                                                            ^~~~~~~~~~~~~~~
src/mesh/NodeDB.h:40:7: note: 'class NodeDB' defined here
   40 | class NodeDB
      |       ^~~~~~
In file included from src/mesh/generated/meshtastic/localonly.pb.h:8,
                 from src/mesh/generated/meshtastic/deviceonly.pb.h:8,
                 from src/mesh/generated/meshtastic/admin.pb.h:10,
                 from src/mesh/mesh-pb-constants.h:3,
                 from src/mesh/PhoneAPI.h:4,
                 from src/mesh/StreamAPI.h:3,
                 from src/SerialConsole.h:4,
                 from src/DebugConfiguration.h:26,
                 from src/configuration.h:207,
                 from src/mesh/NodeDB.cpp:1:
src/mesh/NodeDB.cpp: In member function 'void NodeDB::init()':
src/mesh/generated/meshtastic/module_config.pb.h:463:55: warning: narrowing conversion of '(const char*)""' from 'const char*' to 'bool' [-Wnarrowing]
  463 | #define meshtastic_RemoteHardwarePin_init_default {0, "", _meshtastic_RemoteHardwarePinType_MIN}
      |                                                       ^~
src/mesh/NodeDB.cpp:455:55: note: in expansion of macro 'meshtastic_RemoteHardwarePin_init_default'
  455 |         meshtastic_NodeRemoteHardwarePin empty[12] = {meshtastic_RemoteHardwarePin_init_default};
      |                                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*** [.pio/build/wio-e5/src/mesh/PhoneAPI.cpp.o] Error 1
*** [.pio/build/wio-e5/src/mesh/MeshService.cpp.o] Error 1
*** [.pio/build/wio-e5/src/mesh/NodeDB.cpp.o] Error 1
*** [.pio/build/wio-e5/src/main.cpp.o] Error 1
======================================================================= [FAILED] Took 4.00 seconds =======================================================================

Environment    Status    Duration
-------------  --------  ------------
wio-e5         FAILED    00:00:04.004

Relevant log output

No response

@rabarar rabarar added the bug Something isn't working label Jan 4, 2024
@GUVWAF
Copy link
Member

GUVWAF commented Jan 4, 2024

The wio-e5 environment is still a work-in-progress, see #2960.
Do you need specifically this environment? While this is set as the default_envs in platformio.ini, you can select the appropriate environment for your device.

@rabarar
Copy link
Author

rabarar commented Jan 4, 2024 via email

@GUVWAF
Copy link
Member

GUVWAF commented Jan 4, 2024

For the wio-e5 environment or in general? The firmware should build successfully for all supported devices on the master branch as can be seen by the CI.
As I said, the wio-e5 is a work-in-progress in PR 2960 using branch stm32wl.

@rabarar
Copy link
Author

rabarar commented Jan 4, 2024 via email

@jp-bennett
Copy link
Collaborator

I’m confused then. I simply cloned the repo master branch, made no modifications, and attempted to build it. So I don’t see how your CI is successful when I can’t replicate a clean, unmodified build.On Jan 4, 2024, at 12:55 PM, GUVWAF @.> wrote: For the wio-e5 environment or in general? The firmware should build successfully for all supported devices on the master branch as can be seen by the CI. As I said, the wio-e5 is a work-in-progress in PR 2960 using branch stm32wl. —Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.>

You need to pick your build target before building. That said, it's a problem if we're building a WIP target by default.

@jp-bennett
Copy link
Collaborator

We've switched the default build target back to the T-beam. This should make the firmware build cleanly for that device, without setting the target, so closing this issue. Thanks for pointing out this unintended behavior!

@rabarar
Copy link
Author

rabarar commented Jan 4, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants