Trying to limit the number of components being built and failing!
Posted: Sun Oct 11, 2020 11:48 am
The build time (on Windows) for my code when using ESP-IDF (CMake version) is about 5 times longer than any other chipset/platform (NRF52 GCC and SES, NRF53 Zephyr and STM32F4); whatever I do I can't seem to get it down. This is on a CI machine so it is always doing clean builds for all of my chipset/platforms and doing all of them in parallel so controlling -j to match the number of cores is not a realistic solution: ALL the cores are always maxed out in any case.
A better solution is to remove unnecessary components by specifying:
...but I don't seem to be able to make this work; despite needing nothing other than these few components I always end up getting the list below, which is close to 900 source files.
My build metadata is attached: can anyone spot what I'm doing wrong?
app_trace app_update asio bootloader bootloader_support bt cbor coap console cxx driver efuse esp-idf esp-tls esp32 esp_adc_cal esp_common esp_eth esp_event esp_gdbstub esp_http_client esp_http_server esp_https_ota esp_https_server esp_local_ctrl esp_ringbuf esp_rom esp_websocket_client esp_wifi espcoredump esptool_py expat fatfs freemodbus freertos heap idf_test jsmn json libsodium log lwip main mbedtls mdns mqtt newlib nghttp nvs_flash openssl partition_table protobuf-c protocomm pthread sdmmc soc spi_flash spiffs tcp_transport tcpip_adapter ubxlib_runner ulp unity vfs wear_levelling wifi_provisioning wpa_supplicant xtensa
A better solution is to remove unnecessary components by specifying:
Code: Select all
set(COMPONENTS "esp32" "esptool_py" "unity")
My build metadata is attached: can anyone spot what I'm doing wrong?
app_trace app_update asio bootloader bootloader_support bt cbor coap console cxx driver efuse esp-idf esp-tls esp32 esp_adc_cal esp_common esp_eth esp_event esp_gdbstub esp_http_client esp_http_server esp_https_ota esp_https_server esp_local_ctrl esp_ringbuf esp_rom esp_websocket_client esp_wifi espcoredump esptool_py expat fatfs freemodbus freertos heap idf_test jsmn json libsodium log lwip main mbedtls mdns mqtt newlib nghttp nvs_flash openssl partition_table protobuf-c protocomm pthread sdmmc soc spi_flash spiffs tcp_transport tcpip_adapter ubxlib_runner ulp unity vfs wear_levelling wifi_provisioning wpa_supplicant xtensa