no building ESP8266

Moderators: grovkillen, Stuntteam, TD-er

Post Reply
Message
Author
SirWant
Normal user
Posts: 14
Joined: 04 Feb 2023, 16:38

no building ESP8266

#1 Post by SirWant » 04 Jun 2024, 14:56

esp8266_4M1M (normal and custom) error compilling (PlatformIO with VSCode):

Code: Select all

Compiling .pio\build\normal_ESP8266_4M1M\src\src\ControllerQueue_tmp\__tmpfile.cpp.o
src\src\ControllerQueue_tmp\__tmpfile.cpp:292:97: error: no 'bool ControllerDelayHandlerStruct::configureControllerSettings(controllerIndex_t)' member function declared in class 'ControllerDelayHandlerStruct'
 bool ControllerDelayHandlerStruct::configureControllerSettings(controllerIndex_t ControllerIndex)
                                                                                                 ^
src\src\ControllerQueue_tmp\__tmpfile.cpp:304:104: error: no 'void ControllerDelayHandlerStruct::configureControllerSettings(const ControllerSettingsStruct&)' member function declared in class 'ControllerDelayHandlerStruct'
 void ControllerDelayHandlerStruct::configureControllerSettings(const ControllerSettingsStruct& settings) {
                                                                                                        ^
src\src\ControllerQueue_tmp\__tmpfile.cpp: In member function 'bool ControllerDelayHandlerStruct::readyToProcess(const Queue_element_base&) const':    
src\src\ControllerQueue_tmp\__tmpfile.cpp:341:7: error: 'Protocol' was not declared in this scope
   if (Protocol[protocolIndex].needsNetwork) {
       ^
src\src\ControllerQueue_tmp\__tmpfile.cpp: At global scope:
src\src\ControllerQueue_tmp\__tmpfile.cpp:537:22: error: 'ESPEasy_Scheduler::IntervalTimer_e' has not been declared
   ESPEasy_Scheduler::IntervalTimer_e timerID)
                      ^
src\src\ControllerQueue_tmp\__tmpfile.cpp:533:6: error: prototype for 'void ControllerDelayHandlerStruct::process(int, do_process_function, TimingStatsElements, int)' does not match any in class 'ControllerDelayHandlerStruct'
 void ControllerDelayHandlerStruct::process(
      ^
In file included from src\src\ControllerQueue_tmp\__tmpfile.cpp:277:0:
src\src\ControllerQueue_tmp\../ControllerQueue/ControllerDelayHandlerStruct.h:73:10: error: candidate is: void ControllerDelayHandlerStruct::process(int, do_process_function, TimingStatsElements, SchedulerIntervalTimer_e)
   void   process(
          ^
src\src\ControllerQueue_tmp\__tmpfile.cpp: In function 'bool init_mqtt_delay_queue(controllerIndex_t, String&, bool&)':
src\src\ControllerQueue_tmp\__tmpfile.cpp:575:61: error: invalid initialization of reference of type 'ControllerSettingsStruct&' from expression of type 'ControllerSettingsStruct_ptr_type {aka std::shared_ptr<ControllerSettingsStruct>}'
   LoadControllerSettings(ControllerIndex, ControllerSettings);
                                                             ^
In file included from src\src\ControllerQueue_tmp\../ControllerQueue/../Helpers/../../_Plugin_Helper.h:34:0,
                 from src\src\ControllerQueue_tmp\../ControllerQueue/../Helpers/_CPlugin_Helper.h:5,
                 from src\src\ControllerQueue_tmp\../ControllerQueue/ControllerDelayHandlerStruct.h:14,
                 from src\src\ControllerQueue_tmp\__tmpfile.cpp:277:
src\src\ControllerQueue_tmp\../ControllerQueue/../Helpers/../../src/Helpers/ESPEasy_Storage.h:224:8: error: in passing argument 2 of 'String LoadControllerSettings(controllerIndex_t, ControllerSettingsStruct&)'
 String LoadControllerSettings(controllerIndex_t ControllerIndex, ControllerSettingsStruct& controller_settings);
        ^
src\src\ControllerQueue_tmp\__tmpfile.cpp:588:21: error: 'struct ControllerDelayHandlerStruct' has no member named 'configureControllerSettings'       
   MQTTDelayHandler->configureControllerSettings(ControllerSettings);
                     ^
src\src\ControllerQueue_tmp\__tmpfile.cpp:589:35: error: 'ControllerSettingsStruct_ptr_type' has no member named 'Publish'
   pubname    = ControllerSettings.Publish;
                                   ^
src\src\ControllerQueue_tmp\__tmpfile.cpp:590:35: error: 'ControllerSettingsStruct_ptr_type' has no member named 'mqtt_retainFlag'
   retainFlag = ControllerSettings.mqtt_retainFlag();
                                   ^
src\src\ControllerQueue_tmp\__tmpfile.cpp:591:57: error: 'ESPEasy_Scheduler::IntervalTimer_e' has not been declared
   Scheduler.setIntervalTimerOverride(ESPEasy_Scheduler::IntervalTimer_e::TIMER_MQTT, 10); // Make sure the MQTT is being processed as soon
                                                         ^
*** [.pio\build\normal_ESP8266_4M1M\src\src\ControllerQueue_tmp\__tmpfile.cpp.o] Error 1
In file included from src\src\Commands_tmp\../Helpers/../ControllerQueue/../ControllerQueue/ControllerDelayHandlerStruct.h:9:0,
                 from src\src\Commands_tmp\../Helpers/../ControllerQueue/DelayQueueElements.h:8,
                 from src\src\Commands_tmp\../Helpers/_CPlugin_Helper.h:8,
                 from src\src\Commands_tmp\__tmpfile.cpp:2406:
src\src\Commands_tmp\__tmpfile.cpp: In member function 'String UserVarStruct::getAsString(taskIndex_t, taskVarIndex_t, Sensor_VType, uint8_t, bool) const':
src\src\Commands_tmp\../Helpers/../ControllerQueue/../ControllerQueue/../DataStructs/TimingStats.h:180:37: warning: unused variable 'statisticsTimerStart' [-Wunused-variable]
 # define START_TIMER const uint64_t statisticsTimerStart(getMicros64());
                                     ^
src\src\Commands_tmp\__tmpfile.cpp:14346:3: note: in expansion of macro 'START_TIMER'
   START_TIMER
   ^
src\src\Commands_tmp\__tmpfile.cpp: In member function 'String TaskValues_Data_t::getAsString(uint8_t, Sensor_VType, uint8_t) const':
src\src\Commands_tmp\../Helpers/../ControllerQueue/../ControllerQueue/../DataStructs/TimingStats.h:180:37: warning: unused variable 'statisticsTimerStart' [-Wunused-variable]
 # define START_TIMER const uint64_t statisticsTimerStart(getMicros64());
                                     ^
src\src\Commands_tmp\__tmpfile.cpp:17014:3: note: in expansion of macro 'START_TIMER'
   START_TIMER;
   ^
src\src\Commands_tmp\__tmpfile.cpp: In function 'String toString(const float&, unsigned int)':
src\src\Commands_tmp\../Helpers/../ControllerQueue/../ControllerQueue/../DataStructs/TimingStats.h:180:37: warning: unused variable 'statisticsTimerStart' [-Wunused-variable]
 # define START_TIMER const uint64_t statisticsTimerStart(getMicros64());
                                     ^
src\src\Commands_tmp\__tmpfile.cpp:55736:3: note: in expansion of macro 'START_TIMER'

User avatar
Ath
Normal user
Posts: 4333
Joined: 10 Jun 2018, 12:06
Location: NL

Re: no building ESP8266

#2 Post by Ath » 04 Jun 2024, 15:19

You will have to delete (only) all folders ending in _tmp from your src\src folder (recent change in the build scripts, but this can't be fixed/cleaned up automatically). Do NOT delete the folder ending in _templ !!!!
/Ton (PayPal.me)

TD-er
Core team member
Posts: 9901
Joined: 01 Sep 2017, 22:13
Location: the Netherlands
Contact:

Re: no building ESP8266

#3 Post by TD-er » 04 Jun 2024, 16:02

Previously I did create multiple temporary files while compiling for ESP8266.
There are named __tmpfile.cpp
(2 underscores)
You can try to delete those and try again.
It now only creates a single temporary file like this but if the old ones are still present the compile may fail.

I will try to find and remove them in the build script to prevent others from wasting time on this.

SirWant
Normal user
Posts: 14
Joined: 04 Feb 2023, 16:38

Re: no building ESP8266

#4 Post by SirWant » 04 Jun 2024, 16:48

Ath wrote: 04 Jun 2024, 15:19
TD-er wrote: 04 Jun 2024, 16:02
Everything is fine now, thanks!

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot] and 18 guests