Comments (9)
Just today I have been looking to compile ElegantOTA in async mode and had the above unresolved externals (eg undefined reference to `mbedtls_md5_starts ).
To fix the above issue I found mention (me-no-dev/ESPAsyncWebServer#1141) to include the following in platform.ini
lib_deps = https://github.com/me-no-dev/ESPAsyncWebServer.git
(as the code was updated in the repository but no release made to include it). This fixed the error for me (I obviously removed the reference to the downloaded version of "me-no-dev/ESP Async WebServer@^1.2.3" )
As a side node - I also had worked through the cryptic error of
error: 'HTTP_DELETE' conflicts with a previous declaration XX(0, DELETE, DELETE)
and found that I hadnt updated the build_flags in platform.ini as described above to:
build_flags=-DELEGANTOTA_USE_ASYNC_WEBSERVER=1
I mention this only because the issue was not obvious and I had to search a while to find the build_flags update was needed.
Note: initially I had espressif32 version 6.3.0 installed - so I updated it to 6.4.0, as mentioned above and that did not solve the unresolved external issue (although it might have helped stop subsequent issues showing up - hence me mentioning it)
from elegantota.
Maybe try to fix the expressif32 version. Example:
[env]
framework = arduino
platform = [email protected]
lib_compat_mode = strict
lib_ldf_mode = deep+
from elegantota.
Hi, thanks for the reply. I'm quite new to PlatformIO and some setup are eluding me yet !
Ok I've tried this ini:
[env:esp32dev]
platform = [email protected]
lib_compat_mode = strict
lib_ldf_mode = deep+
board = esp32dev
framework = arduino
lib_deps =
ayushsharma82/ElegantOTA@^3.1.0
me-no-dev/AsyncTCP@^1.1.1
me-no-dev/ESP Async WebServer@^1.2.3
build_flags=-DELEGANTOTA_USE_ASYNC_WEBSERVER=1
Now I've this error instead:
src/main.cpp:35:10: fatal error: ElegantOTA.h: No such file or directory
********************************************************************
* Looking for ElegantOTA.h dependency? Check our library registry!
*
* CLI > platformio lib search "header:ElegantOTA.h"
* Web > https://registry.platformio.org/search?q=header:ElegantOTA.h
*
********************************************************************
#include <ElegantOTA.h>
^~~~~~~~~~~~~~
compilation terminated.
I've reinstall the ElegantOTA lib, but it remains the same...
If I comment the "strict" and "deep+" lines in the ini file, I got the first error as describe initially...
from elegantota.
Did you check that the dependency downloads correctly ?
Maybe try to fetch from github directly:
lib_deps =
https://github.com/ayushsharma82/ElegantOTA@^3.1.0
from elegantota.
Sorry, I'm really noob at this ! Can't get it from github:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Library Manager: Installing git+https://github.com/ayushsharma82/ElegantOTA @ ^3.1.0
UserSideException: Please install Git client from https://git-scm.com/downloads
* The terminal process "C:\Users\sbara\.platformio\penv\Scripts\platformio.exe 'run'" terminated with exit code: 1.
* Terminal will be reused by tasks, press any key to close it.
I don't know what to install and where, is it a Visual Code extension ?
from elegantota.
So I try the Elegant Demo (not Async) with my original ini file and it compiles OK.
The conflict is in the Async Demo, maybe it's flag related or in regard with AsyncTCP and/or ESPAsyncwebserver ????
For the flag in PlatformIO, is it the correct way:
build_flags=-DELEGANTOTA_USE_ASYNC_WEBSERVER=1
from elegantota.
For the flag in PlatformIO, is it the correct way:
build_flags=-DELEGANTOTA_USE_ASYNC_WEBSERVER=1
yes.
But your error is quite descriptive: Please install Git client from https://git-scm.com/downloads
Make sure you have a proper dev. env. in place before even thinking of using platformio...
The project works fine (I am a contributor) and CI build pass.
from elegantota.
Thank you Mathieu, I couldn't find a way yet with Async type OTA, but it works fine with the "sync" version. So I'll stick with that for now.
from elegantota.
To fix the above issue I found mention (me-no-dev/ESPAsyncWebServer#1141) to include the following in platform.ini lib_deps = https://github.com/me-no-dev/ESPAsyncWebServer.git
(as the code was updated in the repository but no release made to include it). This fixed the error for me (I obviously removed the reference to the downloaded version of "me-no-dev/ESP Async WebServer@^1.2.3" )
I've replace lib_deps to the ESPAsyncWebServer git like you popose and it works fine !
Thanks for the help !
from elegantota.
Related Issues (20)
- Smartphone browser crash when selecting a path containing a data type. HOT 2
- Failed to write chunked data to free space HOT 2
- EspressifSystems version 3.0.1 arduino ide 1.8.19 HOT 4
- Did you remove the Coffee Crap? HOT 8
- Use of absolute paths causes failures with subpath-based reverse proxying HOT 4
- esp_int_wdt.h no such file directory HOT 1
- error after enable async mode HOT 11
- beginResponse_P - Braking Change in mathieucarbou / ESPAsyncWebServer for ESP32 in release 3.0.2 HOT 13
- Platformio - ElegantOTA AsyncTCP library multiple defines clash with all versions of AsyncMQTT HOT 5
- MakerFabs ESP32 S3 in bootloop HOT 16
- ElegantOTA PlatformIO error HOT 6
- Compilation error on ESP32-S3 HOT 3
- Webserver fails to connect afer one OTA upload HOT 2
- ElegantOTA in a ESP32 not compiling. HOT 3
- ESP-Home incompatibility HOT 2
- Publish sources of the "ELEGANT_HTML" HOT 1
- Understanding how exactly OTA delivers .bin file to esp32 HOT 3
- Autoreboot HOT 3
- AsyncWebserver wont work on ElegantOTA ?
- [BUG] Build error for ESP8266 with latest version on PlatformIO HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from elegantota.