std-training icon indicating copy to clipboard operation
std-training copied to clipboard

`cargo build` fails under Ubuntu 22.04 on WSL2

Open spookyvision opened this issue 3 years ago • 1 comments

ace@UNITINU:~/espressif-trainings/intro/hardware-check$ cargo build --release
(...)
error: failed to run custom build command for esp-idf-sys v0.30.4
(...)
/usr/bin/python3: No module named pip                                                                                                                             

partial solution: sudo apt install python-pip3

however, then this happens (same error occurs when running in Docker with the supplied docker config instead):

  esptool.py v3.3.2-dev                                                                                                                                                                           Creating esp32c3 image...                                                                                                                                                                       Merged 1 ELF section                                                                                                                                                                            Successfully created esp32c3 image.                                                                                                                                                             Generated /home/ace/espressif-trainings/intro/hardware-check/target/riscv32imc-esp-espidf/release/build/esp-idf-sys-4ad62538e5233c10/out/build/libespidf.bin                                    [995/995] cd /home/ace/espressif-trainings/intro/hardware-check/target/riscv32imc-esp-espidf/release/build/esp-idf-sys-4ad62538e5233c10/out/build/esp-idf/esptool_py && python /home/ace/.espressif/esp-idf-release/v4.4/components/partition_table/check_sizes.py --offset 0x8000 partition --type app /home/ace/espressif-trainings/intro/hardware-check/target/riscv32imc-esp-espidf/release/build/esp-idf-sys-4ad62538e5233c10/out/build/partition_table/partition-table.bin /home/ace/espressif-trainings/intro/hardware-check/target/riscv32imc-esp-espidf/release/build/esp-idf-sys-4ad62538e5233c10/out/build/libespidf.bin                                                                                                                                                             libespidf.bin binary size 0x22130 bytes. Smallest app partition is 0x100000 bytes. 0xdded0 bytes (87%) free.
  cargo:root=/home/ace/espressif-trainings/intro/hardware-check/target/riscv32imc-esp-espidf/release/build/esp-idf-sys-4ad62538e5233c10/out
  cargo:rerun-if-changed=/home/ace/.cargo/registry/src/github.com-1ecc6299db9ec823/esp-idf-sys-0.30.4/src/include/esp-idf/bindings.h
                                                                                                                                                                                                  --- stderr                                                                                                                                                                                      fatal: No names found, cannot describe anything.                                                                                                                                                fatal: No names found, cannot describe anything.
    WARNING: The script virtualenv is installed in '/home/ace/.local/bin' which is not on PATH.
    Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
  fatal: No names found, cannot describe anything.                                                                                                                                                fatal: No names found, cannot describe anything.                                                                                                                                                fatal: No names found, cannot describe anything.                                                                                                                                                Output: "/home/ace/espressif-trainings/intro/hardware-check/target/riscv32imc-esp-espidf/release/build/esp-idf-sys-4ad62538e5233c10/out/bindings.rs"
  Bindgen builder flags: ["/home/ace/.cargo/registry/src/github.com-1ecc6299db9ec823/esp-idf-sys-0.30.4/src/include/esp-idf/bindings.h", "--rust-target", "1.47", "--blocklist-function", "strtold", "--blocklist-function", "_strtold_r", "--blocklist-function", "v.*printf", "--blocklist-function", "v.*scanf", "--blocklist-function", "_v.*printf_r", "--blocklist-function", "_v.*scanf_r", "--blocklist-function", "esp_log_writev", "--no-layout-tests", "--with-derive-default", "--ctypes-prefix", "c_types", "--generate", "functions,types,vars,methods,constructors,destructors",
"--use-core", "--no-rustfmt-bindings", "--", "-D__bindgen", "-DHAVE_CONFIG_H", "-DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\"", "-DUNITY_INCLUDE_CONFIG_H", "-DWITH_POSIX", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_ringbuf/include", "-I/home/ace/espressif-trainings/intro/hardware-check/target/riscv32imc-esp-espidf/release/build/esp-idf-sys-4ad62538e5233c10/out/build/config", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/newlib/platform_include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/freertos/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/freertos/include/esp_additions/freertos", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/freertos/port/riscv/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/freertos/include/esp_additions", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_hw_support/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_hw_support/include/soc", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_hw_support/include/soc/esp32c3", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_hw_support/port/esp32c3/.", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_hw_support/port/esp32c3/private_include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/heap/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/log/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/lwip/include/apps", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/lwip/include/apps/sntp", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/lwip/lwip/src/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/lwip/port/esp32/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/lwip/port/esp32/include/arch", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/soc/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/soc/esp32c3/.", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/soc/esp32c3/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/hal/esp32c3/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/hal/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/hal/platform_port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_rom/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_rom/include/esp32c3", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_rom/esp32c3", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_common/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_system/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_system/port/soc", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_system/port/include/riscv", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_system/port/public_compat", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/riscv/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/driver/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/driver/esp32c3/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_pm/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/efuse/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/efuse/esp32c3/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/vfs/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_wifi/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_event/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_netif/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_eth/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/tcpip_adapter/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_phy/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_phy/esp32c3/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_ipc/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/app_trace/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_timer/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/mbedtls/port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/mbedtls/mbedtls/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/app_update/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/spi_flash/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/bootloader_support/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/nvs_flash/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/pthread/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_gdbstub/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_gdbstub/riscv", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_gdbstub/esp32c3", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/espcoredump/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/espcoredump/include/port/riscv", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/wpa_supplicant/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/wpa_supplicant/port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/wpa_supplicant/esp_supplicant/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/ieee802154/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/console", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/asio/asio/asio/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/asio/port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/cbor/port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/unity/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/unity/unity/src", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/cmock/CMock/src", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/coap/port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/coap/libcoap/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/nghttp/port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/nghttp/nghttp2/lib/includes", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp-tls", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp-tls/esp-tls-crypto", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_adc_cal/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_hid/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/tcp_transport/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_http_client/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_http_server/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_https_ota/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_lcd/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_lcd/interface", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/protobuf-c/protobuf-c", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/protocomm/include/common", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/protocomm/include/security", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/protocomm/include/transports", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/mdns/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_local_ctrl/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/sdmmc/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_serial_slave_link/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/esp_websocket_client/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/expat/expat/expat/lib", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/expat/port/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/wear_levelling/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/fatfs/diskio", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/fatfs/vfs", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/fatfs/src", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/freemodbus/common/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/idf_test/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/idf_test/include/esp32c3", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/jsmn/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/json/cJSON", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/libsodium/libsodium/src/libsodium/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/libsodium/port_include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/mqtt/esp-mqtt/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/openssl/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/spiffs/include", "-I/home/ace/.espressif/esp-idf-release/v4.4/components/wifi_provisioning/include", "--sysroot=/home/ace/.espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0/riscv32-esp-elf/bin/../riscv32-esp-elf", "-I/home/ace/.espressif/tools/riscv32-esp-elf/esp-2021r2-patch3-8.4.0/riscv32-esp-elf/bin/../riscv32-esp-elf/include", "-x", "c", "-DESP_IDF_COMP_PTHREAD_ENABLED", "-DESP_IDF_COMP_NVS_FLASH_ENABLED", "-DESP_IDF_COMP_ESP_TLS_ENABLED", "-DESP_IDF_COMP_ESP_HTTP_CLIENT_ENABLED", "-DESP_IDF_COMP_ESP_HTTP_SERVER_ENABLED", "-DESP_IDF_COMP_ESPCOREDUMP_ENABLED", "-DESP_IDF_COMP_APP_UPDATE_ENABLED", "-DESP_IDF_COMP_ESP_SERIAL_SLAVE_LINK_ENABLED", "-DESP_IDF_COMP_SPI_FLASH_ENABLED", "-DESP_IDF_COMP_ESP_ADC_CAL_ENABLED", "-DESP_IDF_COMP_MQTT_ENABLED", "-DESP_IDF_COMP_VFS_ENABLED", "-DESP_IDF_COMP_SPIFFS_ENABLED", "-DESP_IDF_COMP_FATFS_ENABLED", "-DESP_IDF_COMP_SOC_ENABLED", "-target", "riscv32"]
  /home/ace/.espressif/esp-idf-release/v4.4/components/freertos/port/riscv/include/freertos/portmacro.h:439:20: warning: section does not match previous declaration [-Wsection]
  /home/ace/.espressif/esp-idf-release/v4.4/components/freertos/port/riscv/include/freertos/portmacro.h:271:20: note: previous attribute is here
  /home/ace/.cargo/registry/src/github.com-1ecc6299db9ec823/esp-idf-sys-0.30.4/src/include/esp-idf/bindings.h:69:10: fatal error: 'esp_crt_bundle.h' file not found
  /home/ace/.espressif/esp-idf-release/v4.4/components/freertos/port/riscv/include/freertos/portmacro.h:439:20: warning: section does not match previous declaration [-Wsection], err: false
  /home/ace/.cargo/registry/src/github.com-1ecc6299db9ec823/esp-idf-sys-0.30.4/src/include/esp-idf/bindings.h:69:10: fatal error: 'esp_crt_bundle.h' file not found, err: true                    
  Error: Failed to generate bindings

spookyvision avatar Jun 26 '22 16:06 spookyvision

Juraj fixed it:

Try upgrade to newer version of esp-idf-sys. It might solve the problem. 0.31.6 works for me.

I unfortunately don't have the time for a PR fix that includes updating all deps & checking on all supported platforms. Just using latest of everything should work though.

spookyvision avatar Jun 27 '22 12:06 spookyvision