Hey there! I'm trying to get the ethernet library to work with platformio for my esp32, im stuck @ basic examples, the compiler always gives me alot of errors like the following, any idea how to get it running?
Verbose mode can be enabled via -v, --verbose option
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32dev.html
PLATFORM: Espressif 32 > Espressif ESP32 Dev Module
HARDWARE: ESP32 240MHz 320KB RAM (4MB Flash)
DEBUG: CURRENT(esp-prog) EXTERNAL(esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF MODES: FINDER(chain) COMPATIBILITY(soft)
Collected 30 compatible libraries
Scanning dependencies...
Dependency Graph
|-- 2.0.0
| |-- 1.0
|-- 1.0
Compiling .pioenvs\esp32dev\src\main.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\Dhcp.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\Dns.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\Ethernet.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetClient.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetServer.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetUdp.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\socket.cpp.o
In file included from src\main.cpp:23:0:
.piolibdeps\Ethernet_ID872\src/Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src/Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src/Ethernet.h:51,
from src\main.cpp:23:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from src\main.cpp:23:0:
.piolibdeps\Ethernet_ID872\src/Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
src\main.cpp:38:16: error: cannot declare variable 'server' to be of abstract type 'EthernetServer'
EthernetServer server(23);
^
In file included from src\main.cpp:23:0:
.piolibdeps\Ethernet_ID872\src/Ethernet.h:253:7: note: because the following virtual functions are pure within 'EthernetServer':
class EthernetServer : public Server {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:158:0,
from .piolibdeps\Ethernet_ID872\src/Ethernet.h:51,
from src\main.cpp:23:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Server.h:28:18: note: virtual void Server::begin(uint16_t)
virtual void begin(uint16_t port=0) =0;
^
src\main.cpp:40:25: error: invalid abstract type 'EthernetClient' for 'clients'
EthernetClient clients[8];
^
src\main.cpp: In function 'void loop()':
src\main.cpp:80:44: error: cannot allocate an object of abstract type 'EthernetClient'
EthernetClient newClient = server.accept();
^
src\main.cpp:80:18: error: cannot declare variable 'newClient' to be of abstract type 'EthernetClient'
EthernetClient newClient = server.accept();
^
[.pioenvs\esp32dev\src\main.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\Dhcp.cpp:5:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\Dhcp.cpp:4:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\Dhcp.cpp:5:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
In file included from .piolibdeps\Ethernet_ID872\src\Dns.cpp:6:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\Dns.cpp:5:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\Dns.cpp:6:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\Dhcp.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\Ethernet.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\Ethernet.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\Ethernet.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\Dns.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\EthernetClient.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\EthernetClient.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\EthernetClient.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\Ethernet.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:40:1: error: invalid abstract return type 'EthernetClient'
EthernetClient EthernetServer::available()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: In member function 'EthernetClient EthernetServer::available()':
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:40:16: error: invalid abstract return type for member function 'EthernetClient EthernetServer::available()'
EthernetClient EthernetServer::available()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:47:47: error: invalid cast to abstract class type 'EthernetClient'
if (!chip) return EthernetClient(MAX_SOCK_NUM);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:72:33: error: invalid cast to abstract class type 'EthernetClient'
return EthernetClient(sockindex);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: At global scope:
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:75:1: error: invalid abstract return type 'EthernetClient'
EthernetClient EthernetServer::accept()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: In member function 'EthernetClient EthernetServer::accept()':
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:75:16: error: invalid abstract return type for member function 'EthernetClient EthernetServer::accept()'
EthernetClient EthernetServer::accept()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:82:47: error: invalid cast to abstract class type 'EthernetClient'
if (!chip) return EthernetClient(MAX_SOCK_NUM);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:104:33: error: invalid cast to abstract class type 'EthernetClient'
return EthernetClient(sockindex);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: In member function 'virtual size_t EthernetServer::write(const uint8_t*, size_t)':
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:170:12: error: cannot allocate an object of abstract type 'EthernetClient'
available();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetClient.cpp.o] Error 1
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetServer.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\EthernetUdp.cpp:30:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\EthernetUdp.cpp:29:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\EthernetUdp.cpp:30:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
In file included from .piolibdeps\Ethernet_ID872\src\socket.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\socket.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\socket.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetUdp.cpp.o] Error 1
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\socket.cpp.o] Error 1
================================================================= [ERROR] Took 2.30 seconds =================================================================
The terminal process terminated with exit code: 1
okay found it out with help of platformio forum, i had to switch dependencies for an older build of platformios esp32 support: platform = espressif32@1.7.0 in the platformio.ini
Hey there! I'm trying to get the ethernet library to work with platformio for my esp32, im stuck @ basic examples, the compiler always gives me alot of errors like the following, any idea how to get it running?
Processing esp32dev (platform: espressif32; board: esp32dev; framework: arduino)
Verbose mode can be enabled via 2.0.0
| |-- 1.0
|-- 1.0
Compiling .pioenvs\esp32dev\src\main.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\Dhcp.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\Dns.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\Ethernet.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetClient.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetServer.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetUdp.cpp.o
Compiling .pioenvs\esp32dev\lib42b\Ethernet_ID872\socket.cpp.o
In file included from src\main.cpp:23:0:
.piolibdeps\Ethernet_ID872\src/Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src/Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src/Ethernet.h:51,
from src\main.cpp:23:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from src\main.cpp:23:0:
.piolibdeps\Ethernet_ID872\src/Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
src\main.cpp:38:16: error: cannot declare variable 'server' to be of abstract type 'EthernetServer'
EthernetServer server(23);
^
In file included from src\main.cpp:23:0:
.piolibdeps\Ethernet_ID872\src/Ethernet.h:253:7: note: because the following virtual functions are pure within 'EthernetServer':
class EthernetServer : public Server {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:158:0,
from .piolibdeps\Ethernet_ID872\src/Ethernet.h:51,
from src\main.cpp:23:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Server.h:28:18: note: virtual void Server::begin(uint16_t)
virtual void begin(uint16_t port=0) =0;
^
src\main.cpp:40:25: error: invalid abstract type 'EthernetClient' for 'clients'
EthernetClient clients[8];
^
src\main.cpp: In function 'void loop()':
src\main.cpp:80:44: error: cannot allocate an object of abstract type 'EthernetClient'
EthernetClient newClient = server.accept();
^
src\main.cpp:80:18: error: cannot declare variable 'newClient' to be of abstract type 'EthernetClient'
EthernetClient newClient = server.accept();
^
[.pioenvs\esp32dev\src\main.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\Dhcp.cpp:5:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\Dhcp.cpp:4:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\Dhcp.cpp:5:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
In file included from .piolibdeps\Ethernet_ID872\src\Dns.cpp:6:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\Dns.cpp:5:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\Dns.cpp:6:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\Dhcp.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\Ethernet.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\Ethernet.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\Ethernet.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\Dns.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\EthernetClient.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\EthernetClient.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\EthernetClient.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\Ethernet.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:40:1: error: invalid abstract return type 'EthernetClient'
EthernetClient EthernetServer::available()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: In member function 'EthernetClient EthernetServer::available()':
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:40:16: error: invalid abstract return type for member function 'EthernetClient EthernetServer::available()'
EthernetClient EthernetServer::available()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:47:47: error: invalid cast to abstract class type 'EthernetClient'
if (!chip) return EthernetClient(MAX_SOCK_NUM);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:72:33: error: invalid cast to abstract class type 'EthernetClient'
return EthernetClient(sockindex);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: At global scope:
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:75:1: error: invalid abstract return type 'EthernetClient'
EthernetClient EthernetServer::accept()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: In member function 'EthernetClient EthernetServer::accept()':
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:75:16: error: invalid abstract return type for member function 'EthernetClient EthernetServer::accept()'
EthernetClient EthernetServer::accept()
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:82:47: error: invalid cast to abstract class type 'EthernetClient'
if (!chip) return EthernetClient(MAX_SOCK_NUM);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:104:33: error: invalid cast to abstract class type 'EthernetClient'
return EthernetClient(sockindex);
^
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp: In member function 'virtual size_t EthernetServer::write(const uint8_t*, size_t)':
.piolibdeps\Ethernet_ID872\src\EthernetServer.cpp:170:12: error: cannot allocate an object of abstract type 'EthernetClient'
available();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetClient.cpp.o] Error 1
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetServer.cpp.o] Error 1
In file included from .piolibdeps\Ethernet_ID872\src\EthernetUdp.cpp:30:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\EthernetUdp.cpp:29:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\EthernetUdp.cpp:30:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
In file included from .piolibdeps\Ethernet_ID872\src\socket.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'
EthernetClient available();
^
.piolibdeps\Ethernet_ID872\src\Ethernet.h:214:7: note: because the following virtual functions are pure within 'EthernetClient':
class EthernetClient : public Client {
^
In file included from C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Arduino.h:157:0,
from .piolibdeps\Ethernet_ID872\src\socket.cpp:21:
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:31:17: note: virtual int Client::connect(IPAddress, uint16_t, int)
virtual int connect(IPAddress ip, uint16_t port, int timeout) =0;
^
C:\Users\Sir_A.platformio\packages\framework-arduinoespressif32\cores\esp32/Client.h:32:17: note: virtual int Client::connect(const char, uint16_t, int)
virtual int connect(const char host, uint16_t port, int timeout) =0;
^
In file included from .piolibdeps\Ethernet_ID872\src\socket.cpp:22:0:
.piolibdeps\Ethernet_ID872\src\Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'
EthernetClient accept();
^
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\EthernetUdp.cpp.o] Error 1
[.pioenvs\esp32dev\lib42b\Ethernet_ID872\socket.cpp.o] Error 1
================================================================= [ERROR] Took 2.30 seconds =================================================================
The terminal process terminated with exit code: 1
-v, --verbose
option CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32dev.html PLATFORM: Espressif 32 > Espressif ESP32 Dev Module HARDWARE: ESP32 240MHz 320KB RAM (4MB Flash) DEBUG: CURRENT(esp-prog) EXTERNAL(esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa) Library Dependency Finder -> http://bit.ly/configure-pio-ldf LDF MODES: FINDER(chain) COMPATIBILITY(soft) Collected 30 compatible libraries Scanning dependencies... Dependency Graph |--