Hi Michael,

I'm sorry to read that you're facing those issues.

It's almost certain that my sdkconfig, after being changed back and forth to disable certain modules that would not compile, is now not in a "pristine" state, and that's certainly why your build and mine do not activate the same compilation paths.

I'll be interested in getting your sdkconfig file to see what is left to fix to have it properly compile.

(In the meantime I have forced the compilation of this part of the module, fixed the compilation errors you were likely to have, and force-pushed those fixes on the 2 branches experimental-esp-idf-v5 and experimental-esp-idf-build-workflow)

Regarding the linking error, I'm not sure why you have it, as it's looks like it is part of the mbedtls of ESP-IDF 5.0 - I'll see if I can reproduce it when I have your sdkconfig.

Regards,

Ludovic

Le 17/02/2023 à 22:54, Michael Balzer a écrit :
Ludovic,

using the docker image I managed to make some progress.

I can now start the build process, but then run into printf format errors on main/ovms_module.cpp, e.g.

/project/main/ovms_module.cpp: In function 'void print_blocks(OvmsWriter*, TaskHandle_t, bool)':
/project/main/ovms_module.cpp:438:37: error: format '%d' expects argument of type 'int', but argument 4 has type 'uint32_t' {aka 'long unsigned int'} [-Werror=format=]

I'm here:

commit 19e36125c6e0597c901eb82a546ef82c1dea8a1e (HEAD -> experimental-esp-idf-v5, llange/experimental-esp-idf-v5)
Author: Ludovic LANGE <llange@users.noreply.github.com>

I thought maybe you've sorted that out in your new build branch, but apparently that has the same error, which leaves me wondering how the automated build can work…

I see you don't have CONFIG_FREERTOS_USE_TRACE_FACILITY in your new "sdkconfig.defaults.esp5", so the module isn't included in your build. But you also have CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y, which automatically enables CONFIG_FREERTOS_USE_TRACE_FACILITY in my setup.

Disabling both options, I just almost got through, just a final linker error:

/project/components/zip/libzip/lib/zip_crypto_mbedtls.c:124: undefined reference to `mbedtls_pkcs5_pbkdf2_hmac'

I assume there are more differences in your new branch / sdkconfig, I'll try that one next.

Regards,
Michael


Am 10.02.23 um 09:37 schrieb Ludovic LANGE:
Hi,

Just as a curiosity, I setup GitHub to build the v5 branch with "GitHub actions".



Note: It's a specific branch because I had to add some configuration files (default sdkconfig options for example), change the reference to wolfssl submodule, add a patch for our mongoose version, ... ; but in the future I could make a PR for this feature if we find it useful.
(I also would like to experiment a little bit with static code analysis, unit tests, etc...)

Regards,

Le 06/02/2023 à 15:23, Ludovic LANGE a écrit :
Hi again,

Additionally, I've just verified that the official docker image for ESP-IDF (doc: https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-guides/tools/idf-docker-image.html ) is able to build the branch.

The only thing to add to the image is the "dos2unix" utility ("apt update && apt-get install dos2unix"), after that you'll be able to build the image.

Do not forget to update your sdkconfig (enabling FreeRTOS compatibility and unchecking SSL for mongoose) before building, and to do the patches for mongoose / wolfssl as described here: https://github.com/llange/Open-Vehicle-Monitoring-System-3/blob/experimental-esp-idf-v5/README.md

Then "idf.py build" should work - at least !

I've used the `docker run --rm -v $PWD:/project -w /project -it espressif/idf:release-v5.0` command to have a shell prompt (launch that in your source file path)

Then install dos2unix, launch menuconfig, then build.

Tell me how it works for you.

(You may have some component build failure ; depending on the sdkconfig flags, I'm still trying to document it)

Regards,



_______________________________________________
OvmsDev mailing list
OvmsDev@lists.openvehicles.com
http://lists.openvehicles.com/mailman/listinfo/ovmsdev

-- 
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26

_______________________________________________
OvmsDev mailing list
OvmsDev@lists.openvehicles.com
http://lists.openvehicles.com/mailman/listinfo/ovmsdev