vshymanskyy / TinyGSM

A small Arduino library for GSM modules, that just works
GNU Lesser General Public License v3.0
1.94k stars 719 forks source link

Cann't compile on Wemos D1 (ESP8266) board #236

Closed Warlib1975 closed 5 years ago

Warlib1975 commented 5 years ago

TinyGSM version: 0.3.5 Hardware: SIM800L

Scenario, steps to reproduce

Just try to compile Diagnostic.ino from the example.

Expected result

Successfull compilation

Actual result

Error when compiling

Arduino: 1.8.8 (Windows 10), Board: "WeMos D1 R1, 160 MHz, Flash, Enabled, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 921600"

SIM800_Diagnostic:61:15: error: cannot declare variable 'client' to be of abstract type 'TinyGsmSim800::GsmClient'

TinyGsmClient client(modem);

           ^

In file included from C:\Users\Fedorov_A\Documents\Arduino\libraries\TinyGSM\src/TinyGsmClient.h:22:0,

             from C:\Users\Fedorov_A\Documents\Arduino\SIM800_Diagnostic\SIM800_Diagnostic.ino:30:

C:\Users\Fedorov_A\Documents\Arduino\libraries\TinyGSM\src/TinyGsmClientSIM800.h:53:7: note: because the following virtual functions are pure within 'TinyGsmSim800::GsmClient':

class GsmClient : public Client

   ^

In file included from C:\Users\Fedorov_A\Documents\Arduino\libraries\TinyGSM\src/TinyGsmCommon.h:25:0,

             from C:\Users\Fedorov_A\Documents\Arduino\libraries\TinyGSM\src/TinyGsmClientSIM800.h:21,

             from C:\Users\Fedorov_A\Documents\Arduino\libraries\TinyGSM\src/TinyGsmClient.h:22,

             from C:\Users\Fedorov_A\Documents\Arduino\SIM800_Diagnostic\SIM800_Diagnostic.ino:30:

C:\Users\Fedorov_A\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0-beta2\cores\esp8266/Client.h:29:21: note: virtual int Client::connect(const IPAddress&, uint16_t)

     virtual int connect(CONST IPAddress& ip, uint16_t port) =0;

                 ^

C:\Users\Fedorov_A\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0-beta2\cores\esp8266/Client.h:37:22: note: virtual bool Client::flush(unsigned int)

     virtual bool flush(unsigned int maxWaitMs = 0) = 0;

                  ^

C:\Users\Fedorov_A\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0-beta2\cores\esp8266/Client.h:38:22: note: virtual bool Client::stop(unsigned int)

     virtual bool stop(unsigned int maxWaitMs = 0) = 0;

                  ^

exit status 1 cannot declare variable 'client' to be of abstract type 'TinyGsmSim800::GsmClient'

vshymanskyy commented 5 years ago

Same as #220