Different esp_ota_ops.h from 'git clone' and github .zip download

chromebin
Posts: 77
Joined: Wed Feb 07, 2018 3:53 pm

Different esp_ota_ops.h from 'git clone' and github .zip download

Postby chromebin » Mon Jul 15, 2019 10:35 pm

I upgraded my IDF as follows:

1. a rename on my old esp-idf folder (to easily revert)
2. `git clone -b v3.2.2 --recursive https://github.com/espressif/esp-idf.git` to get the latest IDF per docs (see https://docs.espressif.com/projects/esp ... et-started)

Now `esp_ota_mark_app_valid_cancel_rollback()` (and others) from `esp_ota_ops.h` was no longer found. So:

3. I downloaded the IDF as a .zip from https://github.com/espressif/esp-idf and inspected `esp_ota_ops.h` (also available online as https://github.com/espressif/esp-idf/bl ... _ota_ops.h).

Conclusion: these are different files, see attachments (smaller file is from `git clone`)

This should be impossible, right?
Attachments
esp_ota_ops.h
(8.3 KiB) Downloaded 688 times
esp_ota_ops.h
(13.38 KiB) Downloaded 661 times

WiFive
Posts: 3529
Joined: Tue Dec 01, 2015 7:35 am

Re: Different esp_ota_ops.h from 'git clone' and github .zip download

Postby WiFive » Tue Jul 16, 2019 3:21 am

The zip you downloaded was master (v4.0) branch but you cloned tag v3.2.2

ESP_Angus
Posts: 2344
Joined: Sun May 08, 2016 4:11 am

Re: Different esp_ota_ops.h from 'git clone' and github .zip download

Postby ESP_Angus » Tue Jul 16, 2019 6:14 am

You can find a zip file for IDF v3.2.2 here, near the bottom of the page:
https://github.com/espressif/esp-idf/releases/v3.2.2

(Note that if you get IDF via the automatic "Download" links that GitHub generates then builds won't succeed, as these GitHub-generated zip files don't include any submodules. For each release we make a zip file that include the submodules and attach it to the release page.)

chromebin
Posts: 77
Joined: Wed Feb 07, 2018 3:53 pm

Re: Different esp_ota_ops.h from 'git clone' and github .zip download

Postby chromebin » Tue Jul 16, 2019 12:45 pm

Thanks for the replies.

Well, as stated, I followed the instructions in the getting started section on the page I linked to, which now (as an apparently direct consequence of my question) suddenly (and without comment here ;) redirects to https://www.espressif.com/en/support/download/documents.

As an exercise I found a new page, https://docs.espressif.com/projects/esp ... t-started/ (which swaps "stable" for "latest"), saying:
The simplest way to do the update is to delete the existing esp-idf folder and clone it again, as if performing the initial installation described in Step 2. Get ESP-IDF.
Which results in:

Code: Select all

cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git
My PC is busy doing this. Don't know what version this will get me (stable? latest? dev?). How do I check which IDF I am currently running? The answer is:

Code: Select all

cd ~/esp/esp-idf
git describe
Note that when I search for 'esp32 idf releases', the top page is https://github.com/espressif/esp-idf/releases, whose title suggests all releases will be listed. Yet it is only v3.2.2.. I don't know how I got to the IDF 4.0 .zip, I probably search for the esp_ota_ops.h, found a different file and followed the trail.
Last edited by chromebin on Tue Jul 16, 2019 1:09 pm, edited 1 time in total.

chromebin
Posts: 77
Joined: Wed Feb 07, 2018 3:53 pm

Re: Different esp_ota_ops.h from 'git clone' and github .zip download

Postby chromebin » Tue Jul 16, 2019 1:06 pm

So git clone terminated and then I got an error: "No rule to make target 'check_python_dependencies', needed by 'all'."

Decoding the error message vomit I find it says to run (as I have no pacman):

C:/msys32/mingw32/bin/python.exe -m pip install --user -r C:/msys32/home/user/esp/esp-idf/requirements.txt

To install "click".

That went down without a hitch so I guess I'm ready to run again!

Or, more likely, busy fixing up paths etc.

chromebin
Posts: 77
Joined: Wed Feb 07, 2018 3:53 pm

Re: Different esp_ota_ops.h from 'git clone' and github .zip download

Postby chromebin » Tue Jul 16, 2019 1:44 pm

Now I'm instructed to update the toolchain, so I found: https://www.esp32.com/viewtopic.php?t=7400, which deals with the v2 update, but the links no longer work.

Then I found https://docs.espressif.com/projects/esp ... setup.html, not quite an update tutorial, but downloading the esp-idf-tools-setup-2.0.exe now.

Googling for updates of the toolchain leads me to number 3 from the results, which is named "Updating ESP-IDF tools on Windows — ESP-IDF Programming Guide", link: https://docs.espressif.com/projects/esp ... pdate.html. But that page is a Page Not Found page, consistently without CSS.

No other search results, so that leave me with the .exe and the probability the pain isn't over yet.

chromebin
Posts: 77
Joined: Wed Feb 07, 2018 3:53 pm

Re: Different esp_ota_ops.h from 'git clone' and github .zip download

Postby chromebin » Tue Jul 16, 2019 2:03 pm

Well, the .exe doesn't seem to know anything about (my existing) MSYS32, and wishes to install in some user folder, so I aborted it.

For now.

So I guess I'm stuck. Again.

What does this .exe do?? The linking page says "To quickly setup the toolchain and other tools in standard way, using the ESP-IDF Tools installer, proceed to section Standard Setup of Toolchain for Windows".

The page itself (https://docs.espressif.com/projects/esp ... setup.html) says "ESP-IDF requires some prerequisite tools to be installed so you can build firmware for the ESP32. The prerequisite tools include Python, Git, cross-compilers, menuconfig tool, CMake and Ninja build tools."

But it goes on to install the IDF itself, which is not what it is supposed to do.

Nevertheless it seems like a dream come true. It's the new Cmake thing? But no word about how it might clobber existing installs.

So, what do I do now? Dump my current "legacy MSYS32 environment"?


The current compiler stops at:

Code: Select all

No rule to make target 'C:/msys32/home/user/esp/esp-idf/components/micro-ecc/micro-ecc/uECC.c', needed by 'micro-ecc/uECC.o'.  Stop.
Seems like "game over".

Reverted everything to my previous IDF, and that's that.

Who is online

Users browsing this forum: Baidu [Spider], Google [Bot] and 104 guests