esp8266 / Arduino

ESP8266 core for Arduino
GNU Lesser General Public License v2.1
15.98k stars 13.34k forks source link

WiFiClientSecureBearSSL.h & compiler issue - follow up #6363

Closed marcostrullato closed 5 years ago

marcostrullato commented 5 years ago

Hi - referencing my previous issue 6361 which I believe has been close too early, @earlephilhower could you please specify what I do have to remove?

I started from a clean latest Arduino IDE installation, I've added the ESP8266 board last version, and I've installed few libraries, last version. I have to admit I have no clue which one might cause the situation.

In the library I have /home/marco/Arduino/libraries/ ├── Adafruit_BMP085_Library ├── Adafruit_Circuit_Playground ├── Adafruit_Unified_Sensor ├── DHT_sensor_library ├── NTPClient ├── PubSubClient └── Servo

For your benefit I paste below the full error message

Arduino: 1.8.9 (Linux), Board: "LOLIN(WEMOS) D1 R2 & mini, 80 MHz, Flash, Disabled, All SSL ciphers (most compatible), 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 921600"

In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecure.h:41:0, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiServerSecure.h:20, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/ESP8266WiFi.h:41, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:29, Multiple libraries were found for "WiFiUdp.h" from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureBearSSL.h:26, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureBearSSL.cpp:28: Used: /home/marco/opt/arduino-1.8.9/libraries/WiFi /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:258:36: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, unsigned cert_issuer_key_type, Not used: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:260:35: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, const PrivateKey sk, ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:38:5: error: 'BearSSL::WiFiClientSecure::~WiFiClientSecure()' marked override, but does not override ~WiFiClientSecure() override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:41:9: error: 'int BearSSL::WiFiClientSecure::connect(const String&, uint16_t)' marked override, but does not override int connect(const String& host, uint16_t port) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:46:12: error: 'size_t BearSSL::WiFiClientSecure::write_P(const char, size_t)' marked override, but does not override size_t write_P(PGM_P buf, size_t size) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:58:12: error: 'size_t BearSSL::WiFiClientSecure::peekBytes(uint8_t, size_t)' marked override, but does not override size_t peekBytes(uint8_t buffer, size_t length) override; ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecure.h:41:0, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiServerSecure.h:20, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/ESP8266WiFi.h:41, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:29, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.h:26, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.cpp:28: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:258:36: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, unsigned cert_issuer_key_type, ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:260:35: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, const PrivateKey sk, ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:38:5: error: 'BearSSL::WiFiClientSecure::~WiFiClientSecure()' marked override, but does not override ~WiFiClientSecure() override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:41:9: error: 'int BearSSL::WiFiClientSecure::connect(const String&, uint16_t)' marked override, but does not override int connect(const String& host, uint16_t port) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:46:12: error: 'size_t BearSSL::WiFiClientSecure::write_P(const char, size_t)' marked override, but does not override size_t write_P(PGM_P buf, size_t size) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:58:12: error: 'size_t BearSSL::WiFiClientSecure::peekBytes(uint8_t, size_t)' marked override, but does not override size_t peekBytes(uint8_t buffer, size_t length) override; ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecure.h:41:0, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiServerSecure.h:20, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/ESP8266WiFi.h:41, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:29, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/Parsing.cpp:25: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:258:36: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, unsigned cert_issuer_key_type, ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:260:35: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, const PrivateKey sk, ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:38:5: error: 'BearSSL::WiFiClientSecure::~WiFiClientSecure()' marked override, but does not override ~WiFiClientSecure() override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:41:9: error: 'int BearSSL::WiFiClientSecure::connect(const String&, uint16_t)' marked override, but does not override int connect(const String& host, uint16_t port) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:46:12: error: 'size_t BearSSL::WiFiClientSecure::write_P(const char, size_t)' marked override, but does not override size_t write_P(PGM_P buf, size_t size) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:58:12: error: 'size_t BearSSL::WiFiClientSecure::peekBytes(uint8_t, size_t)' marked override, but does not override size_t peekBytes(uint8_t buffer, size_t length) override; ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecure.h:41:0, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiServerSecure.h:20, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/ESP8266WiFi.h:41, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:29, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:28: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:258:36: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, unsigned cert_issuer_key_type, ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:260:35: error: expected ')' before '' token WiFiClientSecure(ClientContext client, const X509List chain, const PrivateKey sk, ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:38:5: error: 'BearSSL::WiFiClientSecure::~WiFiClientSecure()' marked override, but does not override ~WiFiClientSecure() override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:41:9: error: 'int BearSSL::WiFiClientSecure::connect(const String&, uint16_t)' marked override, but does not override int connect(const String& host, uint16_t port) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:46:12: error: 'size_t BearSSL::WiFiClientSecure::write_P(const char, size_t)' marked override, but does not override size_t write_P(PGM_P buf, size_t size) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.h:58:12: error: 'size_t BearSSL::WiFiClientSecure::peekBytes(uint8_t, size_t)' marked override, but does not override size_t peekBytes(uint8_t buffer, size_t length) override; ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureBearSSL.h:26:0, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureBearSSL.cpp:28: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h: In member function 'virtual size_t ESP8266WebServer::_currentClientWrite_P(const char, size_t)': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:142:83: error: 'class WiFiClient' has no member named 'write_P' virtual size_t _currentClientWrite_P(PGM_P b, size_t l) { return _currentClient.write_P( b, l ); } ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.h:26:0, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.cpp:28: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h: In member function 'virtual size_t ESP8266WebServer::_currentClientWrite_P(const char, size_t)': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:142:83: error: 'class WiFiClient' has no member named 'write_P' virtual size_t _currentClientWrite_P(PGM_P b, size_t l) { return _currentClient.write_P( b, l ); } ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.h:28:0, from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.cpp:28: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureAxTLS.h: At global scope: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureAxTLS.h:89:33: error: expected ')' before '' token WiFiClientSecure(ClientContext client, bool usePMEM, const uint8_t rsakey, int rsakeyLen, const uint8_t cert, int certLen); ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureBearSSL.cpp: In member function 'virtual void BearSSL::ESP8266WebServerSecure::close()': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureBearSSL.cpp:152:17: error: 'class BearSSL::WiFiServerSecure' has no member named 'close' _serverSecure.close(); ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:28:0: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h: In member function 'virtual size_t ESP8266WebServer::_currentClientWrite_P(const char, size_t)': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:142:83: error: 'class WiFiClient' has no member named 'write_P' virtual size_t _currentClientWrite_P(PGM_P b, size_t l) { return _currentClient.write_P( b, l ); } ^ In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/Parsing.cpp:25:0: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h: In member function 'virtual size_t ESP8266WebServer::_currentClientWrite_P(const char, size_t)': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:142:83: error: 'class WiFiClient' has no member named 'write_P' virtual size_t _currentClientWrite_P(PGM_P b, size_t l) { return _currentClient.write_P( b, l ); } ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureAxTLS.h:36:3: error: 'axTLS::WiFiClientSecure::~WiFiClientSecure()' marked override, but does not override ~WiFiClientSecure() override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureAxTLS.h:39:7: error: 'int axTLS::WiFiClientSecure::connect(const String&, uint16_t)' marked override, but does not override int connect(const String& host, uint16_t port) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureAxTLS.h:47:10: error: 'size_t axTLS::WiFiClientSecure::write_P(const char, size_t)' marked override, but does not override size_t write_P(PGM_P buf, size_t size) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi/src/WiFiClientSecureAxTLS.h:53:10: error: 'size_t axTLS::WiFiClientSecure::peekBytes(uint8_t, size_t)' marked override, but does not override size_t peekBytes(uint8_t *buffer, size_t length) override; ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.cpp: In member function 'virtual void axTLS::ESP8266WebServerSecure::close()': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServerSecureAxTLS.cpp:154:17: error: 'class axTLS::WiFiServerSecure' has no member named 'close' _serverSecure.close(); ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp: In constructor 'ESP8266WebServer::ESP8266WebServer(IPAddress, int)': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:62:17: error: no matching function for call to 'WiFiServer::WiFiServer(IPAddress&, int&)' , _chunked(false) ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:62:17: note: candidates are: In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:26:0: /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:36:3: note: WiFiServer::WiFiServer(uint16_t) WiFiServer(uint16_t); ^ /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:36:3: note: candidate expects 1 argument, 2 provided /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:31:7: note: constexpr WiFiServer::WiFiServer(const WiFiServer&) class WiFiServer : public Server { ^ /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:31:7: note: candidate expects 1 argument, 2 provided /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:31:7: note: constexpr WiFiServer::WiFiServer(WiFiServer&&) /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:31:7: note: candidate expects 1 argument, 2 provided /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp: In destructor 'virtual ESP8266WebServer::~ESP8266WebServer()': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:87:11: error: 'class WiFiServer' has no member named 'close' _server.close(); ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp: In member function 'virtual void ESP8266WebServer::begin(uint16_t)': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:105:21: error: no matching function for call to 'WiFiServer::begin(uint16_t&)' _server.begin(port); ^ /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:105:21: note: candidate is: In file included from /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:26:0: /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:38:8: note: virtual void WiFiServer::begin() void begin(); ^ /home/marco/opt/arduino-1.8.9/libraries/WiFi/src/WiFiServer.h:38:8: note: candidate expects 0 arguments, 1 provided /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp: In member function 'virtual void ESP8266WebServer::close()': /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WebServer/src/ESP8266WebServer.cpp:342:11: error: 'class WiFiServer' has no member named 'close' _server.close(); ^ exit status 1 Error compiling for board LOLIN(WEMOS) D1 R2 & mini.

This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences.

Regards

Pablo2048 commented 5 years ago

I think, that this can be clearly seen from compiler output - see: Multiple libraries were found for "WiFiUdp.h" and then Not used: /home/marco/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/libraries/ESP8266WiFi and Used: /home/marco/opt/arduino-1.8.9/libraries/WiFi It seems like you are also installed some WiFi library, which collide with ESP Core one...