getting error to build RRF for 3.5.1
-
@R006 as from 3.5.1 you need to have project WiFiSocketServerRTOS in the workspace, instead of DuetWiFiSocketServer.
-
@dc42
I attempted to build it using the main branch of WiFiSocketServerRTOS , but I am encountering the same error repeatedly.Could you please advise me on which branch I should use to successfully build the project?
-
@R006 the branch of WiFiSocketServerRTOS called "main" is the correct one to use; but this is not the same as "master".
-
I attempted to build it using the main branch of WiFiSocketServerRTOS , but I am encountering the same error repeatedly.
and other repository from Dev branch.
-
@dc42
i am waiting for your response. -
@R006 in file src/Networking/ESP8266WiFi/NetworkInterface.cpp is the following line:
#include <MessageFormats.h>
That should be #including MessageFormats.h from WiFiSocketServerRTOS/src/include. The include path is set in the project settings, which should look like this (in the MB6XD configuration) if you are using the .cproject file from the current 3.5-dev branch of the RepRapFirmware project:
-
@dc42
here is my tool settings for duet2"${workspace_loc:/CANlib}"
"${workspace_loc:/CoreN2G}"
"${workspace_loc:/FreeRTOS}"
"${workspace_loc:/CoreN2G/src}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/SAM4E}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/asf/common/utils}"
"${workspace_loc:/CoreN2G/src/arm/CMSIS/5.4.0/CMSIS/Core/Include}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils/cmsis/sam4e/include}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/asf}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils/preprocessor}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/asf/sam/utils/header_files}"
"${workspace_loc:/CoreN2G/src/SAM4S_4E_E70/asf/sam/drivers}"
"${workspace_loc:/${ProjName}/src}"
"${workspace_loc:/${ProjName}/src/Hardware/SAM4E}"
"${workspace_loc:/${ProjName}/src/DuetNG}"
"${workspace_loc:/${ProjName}/src/Networking}"
"${workspace_loc:/${ProjName}/src/Networking/MQTT/MQTT_C/include}"
"${workspace_loc:/WiFiSocketServerRTOS/src/include}"
"${workspace_loc:/FreeRTOS/src/include}"
"${workspace_loc:/FreeRTOS/src/portable/GCC/ARM_CM4F}"
"${workspace_loc:/RRFLibraries/src}"
"${workspace_loc:/CANlib/src}" -
@R006 please provide the console output when you try to build RRF.
-
@dc42
here is my console output when i tried to build it../src/Networking/ESP8266WiFi/WiFiInterface.cpp:240:43: error: 'WiFiAuth' was not declared in this scope
240 | static const char* GetWiFiAuthFriendlyStr(WiFiAuth auth) noexcept
| ^~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp: In member function 'virtual void WiFiInterface::Spin()':
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:663:25: error: 'MinimumStatusResponseLength' was not declared in this scope
663 | if (rc >= (int32_t)MinimumStatusResponseLength)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:839:94: error: 'MinimumStatusResponseLength' was not declared in this scope
839 | if (SendCommand(NetworkCommand::networkGetStatus, 0, 0, nullptr, 0, status) >= (int32_t)MinimumStatusResponseLength)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp: In member function 'virtual void WiFiInterface::Diagnostics(MessageType)':
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:942:91: error: 'MinimumStatusResponseLength' was not declared in this scope
942 | if (SendCommand(NetworkCommand::networkGetStatus, 0, 0, nullptr, 0, status) >= (int32_t)MinimumStatusResponseLength)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:961:27: error: 'struct NetworkStatusResponse' has no member named 'channel'
961 | (int)r.rssi, r.channel, ConnectionModes[r.phyMode], reconnectCount);
| ^~~~~~~
../src/Networking/ESP8266WiFi/WiFiSocket.cpp: In member function 'virtual void WiFiSocket::Poll()':
../src/Networking/ESP8266WiFi/WiFiSocket.cpp:207:30: error: 'struct ConnStatusResponse' has no member named 'protocol'
207 | protocol = resp.Value().protocol;
| ^~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp: In member function 'size_t WiFiInterface::CheckCredential(GCodeBuffer&, bool)':
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1084:16: error: 'MaxCredentialChunkSize' was not declared in this scope
1084 | static_assert(MaxCredentialChunkSize <= sizeof(bufferOut->data));
| ^~~~~~~~~~~~~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp: In member function 'int32_t WiFiInterface::SendCredential(size_t, const uint8_t*, size_t)':
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1121:37: error: 'networkAddEnterpriseSsid' is not a member of 'NetworkCommand'
1121 | return SendCommand(NetworkCommand::networkAddEnterpriseSsid, 0,
| ^~~~~~~~~~~~~~~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1122:31: error: 'AddEnterpriseSsidFlag' has not been declared
1122 | static_cast<uint8_t>(AddEnterpriseSsidFlag::CREDENTIAL), credIndex,
| ^~~~~~~~~~~~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp: In member function 'int32_t WiFiInterface::SendTextCredential(GCodeBuffer&, size_t)':
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1128:16: error: 'MaxCredentialChunkSize' was not declared in this scope
1128 | static_assert(MaxCredentialChunkSize <= sizeof(bufferOut->data));
| ^~~~~~~~~~~~~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp: In member function 'int32_t WiFiInterface::SendFileCredential(GCodeBuffer&, size_t)':
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1138:16: error: 'MaxCredentialChunkSize' was not declared in this scope
1138 | static_assert(MaxCredentialChunkSize <= sizeof(bufferOut->data));
| ^~~~~~~~~~~~~~~~~~~~~~
In file included from c:\program files (x86)\gnu arm embedded toolchain\10 2021.10\arm-none-eabi\include\string.h:17,
from c:\program files (x86)\gnu arm embedded toolchain\10 2021.10\arm-none-eabi\include\c++\10.3.1\cstring:42,
from C:\Users\rishita.butala\eclipse-workspace\Firmware\CoreN2G\src/Print.h:24,
from C:\Users\rishita.butala\eclipse-workspace\Firmware\CoreN2G\src/Stream.h:8,
from C:\Users\rishita.butala\eclipse-workspace\Firmware\CoreN2G\src\SAM4S_4E_E70/AsyncSerial.h:23,
from C:\Users\rishita.butala\eclipse-workspace\Firmware\RepRapFirmware\src\Hardware\SAM4E/Devices.h:11,
from C:\Users\rishita.butala\eclipse-workspace\Firmware\RepRapFirmware\src/RepRapFirmware.h:54,
from ../src/Networking/ESP8266WiFi/WiFiInterface.h:11,
from ../src/Networking/ESP8266WiFi/WiFiInterface.cpp:8:
../src/Networking/ESP8266WiFi/WiFiInterface.cpp: In member function 'GCodeResult WiFiInterface::HandleWiFiCode(int, GCodeBuffer&, const StringRef&, OutputBuffer*&)':
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1194:56: error: 'struct WirelessConfigurationData' has no member named 'eap'
1194 | static_assert(offsetof(WirelessConfigurationData, eap.protocol) ==
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1195:94: error: 'struct WirelessConfigurationData' has no member named 'eap'
1195 | offsetof(WirelessConfigurationData, password[sizeof(config.password) - sizeof(config.eap.protocol)]));
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1197:13: error: 'struct WirelessConfigurationData' has no member named 'eap'
1197 | config.eap.protocol = EAPProtocol::NONE;
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1197:28: error: 'EAPProtocol' has not been declared
1197 | config.eap.protocol = EAPProtocol::NONE;
| ^~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1207:16: error: 'struct WirelessConfigurationData' has no member named 'eap'
1207 | config.eap.protocol = EAPProtocol::EAP_TLS;
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1207:31: error: 'EAPProtocol' has not been declared
1207 | config.eap.protocol = EAPProtocol::EAP_TLS;
| ^~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1210:16: error: 'struct WirelessConfigurationData' has no member named 'eap'
1210 | config.eap.protocol = EAPProtocol::EAP_PEAP_MSCHAPV2;
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1210:31: error: 'EAPProtocol' has not been declared
1210 | config.eap.protocol = EAPProtocol::EAP_PEAP_MSCHAPV2;
| ^~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1213:16: error: 'struct WirelessConfigurationData' has no member named 'eap'
1213 | config.eap.protocol = EAPProtocol::EAP_TTLS_MSCHAPV2;
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1213:31: error: 'EAPProtocol' has not been declared
1213 | config.eap.protocol = EAPProtocol::EAP_TTLS_MSCHAPV2;
| ^~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1240:17: error: 'struct WirelessConfigurationData' has no member named 'eap'
1240 | if (config.eap.protocol != EAPProtocol::NONE)
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1240:33: error: 'EAPProtocol' has not been declared
1240 | if (config.eap.protocol != EAPProtocol::NONE)
| ^~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1245:15: error: 'struct WirelessConfigurationData' has no member named 'eap'
1245 | config.eap.credSizes.asMemb.caCert = CheckCredential(gb, true);
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1248:18: error: 'struct WirelessConfigurationData' has no member named 'eap'
1248 | if (config.eap.protocol == EAPProtocol::EAP_TLS)
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1248:34: error: 'EAPProtocol' has not been declared
1248 | if (config.eap.protocol == EAPProtocol::EAP_TLS)
| ^~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1252:16: error: 'struct WirelessConfigurationData' has no member named 'eap'
1252 | config.eap.credSizes.asMemb.anonymousId = CheckCredential(gb);
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1257:16: error: 'struct WirelessConfigurationData' has no member named 'eap'
1257 | config.eap.credSizes.asMemb.tls.userCert = CheckCredential(gb, true);
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1262:16: error: 'struct WirelessConfigurationData' has no member named 'eap'
1262 | config.eap.credSizes.asMemb.tls.privateKey = CheckCredential(gb, true);
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1267:16: error: 'struct WirelessConfigurationData' has no member named 'eap'
1267 | config.eap.credSizes.asMemb.tls.privateKeyPswd = CheckCredential(gb);
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1270:23: error: 'struct WirelessConfigurationData' has no member named 'eap'
1270 | else if (config.eap.protocol == EAPProtocol::EAP_PEAP_MSCHAPV2 || config.eap.protocol == EAPProtocol::EAP_TTLS_MSCHAPV2)
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1270:39: error: 'EAPProtocol' has not been declared
1270 | else if (config.eap.protocol == EAPProtocol::EAP_PEAP_MSCHAPV2 || config.eap.protocol == EAPProtocol::EAP_TTLS_MSCHAPV2)
| ^~~~~~~~~~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1270:80: error: 'struct WirelessConfigurationData' has no member named 'eap'
1270 | else if (config.eap.protocol == EAPProtocol::EAP_PEAP_MSCHAPV2 || config.eap.protocol == EAPProtocol::EAP_TTLS_MSCHAPV2)
| ^~~
../src/Networking/ESP8266WiFi/WiFiInterface.cpp:1270:96: error: 'EAPProtocol' has not been declaredFinished building: ../src/Networking/ESP8266WiFi/WifiFirmwareUploader.cpp
Finished building: ../src/Networking/Network.cpp
Finished building: ../src/Networking/FtpResponder.cpp
Finished building: ../src/Networking/NetworkBuffer.cppFinished building: ../src/Networking/HttpResponder.cpp
make: *** [makefile:102: all] Error 2
"make -j8 all" terminated with exit code 2. Build might be incomplete.09:47:41 Build Failed. 88 errors, 0 warnings. (took 18s.99ms)
-
@R006 it looks to me that you have a very old branch or version of WiFiSocketServerRTOS in your workspace. This is what mine looks like in Eclipse:
The contents of MessageFormats.h in that project should be the same as at https://github.com/Duet3D/WiFiSocketServerRTOS/blob/main/src/include/MessageFormats.h.