Skocz do zawartości

ESP32 + MySQL Connector: błąd kompilacji


sitar

Pomocna odpowiedź

Dzień dobry, od wczoraj męczę się z uruchomieniem MySQL Connector na ESP32. Samo połączenie z WiFi działa, dodanie bibliotek MySQL_Connection.h i MySQL_Cursor.h generuje błędy już podczas kompilacji:

In file included from C:\Users\sitar\Documents\Arduino\libraries\MySQL_Connector_Arduino\src/MySQL_Packet.h:36:0,

                 from C:\Users\sitar\Documents\Arduino\libraries\MySQL_Connector_Arduino\src/MySQL_Connection.h:37,

                 from C:\Users\sitar\Desktop\connectwifi\connectwifi.ino:2:

C:\Program Files (x86)\Arduino\libraries\Ethernet\src/Ethernet.h:258:2: error: invalid abstract return type 'EthernetClient'

  EthernetClient available();

  ^

C:\Program Files (x86)\Arduino\libraries\Ethernet\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\sitar\Documents\Arduino\hardware\espressif\esp32\cores\esp32/Arduino.h:151:0,

                 from sketch\connectwifi.ino.cpp:1:

C:\Users\sitar\Documents\Arduino\hardware\espressif\esp32\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\sitar\Documents\Arduino\hardware\espressif\esp32\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 C:\Users\sitar\Documents\Arduino\libraries\MySQL_Connector_Arduino\src/MySQL_Packet.h:36:0,

                 from C:\Users\sitar\Documents\Arduino\libraries\MySQL_Connector_Arduino\src/MySQL_Connection.h:37,

                 from C:\Users\sitar\Desktop\connectwifi\connectwifi.ino:2:

C:\Program Files (x86)\Arduino\libraries\Ethernet\src/Ethernet.h:259:2: error: invalid abstract return type 'EthernetClient'

  EthernetClient accept();

  ^

Znaleziono wiele bibliotek w "WiFi.h"
Wykorzystane: C:\Users\sitar\Documents\Arduino\hardware\espressif\esp32\libraries\WiFi
Niewykorzystane: C:\Program Files (x86)\Arduino\libraries\WiFi
exit status 1
Błąd kompilacji dla płytki DOIT ESP32 DEVKIT V1.


Profilaktycznie przeinstalowałem całe Arduino IDE i zainstalowałem ESP zgodnie z instrukcją na GitHubie. MySQL Connector zainstalowany z IDE. Jakieś pomysły, jak sobie z tym poradzić? 😶

Skromny, a już nie działający kod:

#include <WiFi.h>
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

const char* ssid = "login";
const char* password =  "haslo";

//WiFiClient client;
//MySQL_Connection conn(&client);
//MySQL_Cursor* cursor;

void setup() {
  Serial.begin(9600);
  WiFi.begin(ssid, password);
 
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.println("Connecting to WiFi..");
  }
 
  Serial.println("Connected to the WiFi network");
 
}
 
void loop() { 
}

 

Link do komentarza
Share on other sites

Dziękuję serdecznie, to rozwiązało problem.

Na ogół warto brać biblioteki od razu bezpośrednio z GitHuba, czy te dostępne w IDE są w miarę na bieżąco?

Link do komentarza
Share on other sites

Ja robię tak: pobieram w IDE, a jeśli coś nie działa to zaglądam na githuba. Bo bywa różnie - czasem (jak w tym przypadku) poprawka ratująca sytuację była niedawno i nowa wersja się jeszcze nie ukazała - a czasem nowa wersja na githubie ma (jeszcze) błędy których nie ma wersja stabilna.

 

  • Lubię! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.